3.3 KiB
id, title, challengeType, videoUrl, forumTopicId, dashedName
id | title | challengeType | videoUrl | forumTopicId | dashedName |
---|---|---|---|---|---|
bad87fee1348bd8aedf06756 | Заміна об'яв класів за стилем атрибутів ID | 0 | https://scrimba.com/c/cRkpDhB | 18251 | override-class-declarations-by-styling-id-attributes |
--description--
Ми щойно довели, що браузери читають CSS зверху вниз в порядку їх об'яв. Це означає, що, у випадку конфлікту, браузер використає ту об'яву CSS, що вказана останньою. Зверніть увагу, що навіть якби ми поставили blue-text
перед pink-text
у класах елемента h1
, він все одно б орієнтувався на порядок об'яв, а не на порядок їх використання!
Але ми ще не закінчили. Є й інші способи замінити CSS. Пригадуєте атрибути id?
Давайте замінимо класи pink-text
та blue-text
і зробимо елемент h1
оранжевим, надавши елементу the h1
id, і згодом стилізуємо цей id.
--instructions--
Задайте елементу h1
атрибут id
orange-text
. Пам'ятайте, що стилі id виглядають так:
<h1 id="orange-text">
Залишіть класи blue-text
та pink-text
на елементі h1
.
Створіть об'яву CSS для id orange-text
в елементі style
. Ось приклад того, як це виглядає:
#brown-text {
color: brown;
}
Примітка: Не важливо чи ви об'явите цей CSS вище або нижче класу pink-text
, оскільки атрибут id
завжди матиме пріоритет.
--hints--
Елемент h1
повинен мати клас pink-text
.
assert($('h1').hasClass('pink-text'));
Елемент h1
повинен мати клас blue-text
.
assert($('h1').hasClass('blue-text'));
Елемент h1
повинен мати id orange-text
.
assert($('h1').attr('id') === 'orange-text');
Має бути лише один елемент h1
.
assert($('h1').length === 1);
Id orange-text
повинен мати об'яву CSS.
assert(code.match(/#orange-text\s*{/gi));
Елемент h1
не повинен мати жодних атрибутів style
.
assert(!code.match(/<h1.*style.*>/gi));
Елемент h1
повинен бути оранжевим.
assert($('h1').css('color') === 'rgb(255, 165, 0)');
--seed--
--seed-contents--
<style>
body {
background-color: black;
font-family: monospace;
color: green;
}
.pink-text {
color: pink;
}
.blue-text {
color: blue;
}
</style>
<h1 class="pink-text blue-text">Hello World!</h1>
--solutions--
<style>
body {
background-color: black;
font-family: monospace;
color: green;
}
.pink-text {
color: pink;
}
.blue-text {
color: blue;
}
#orange-text {
color: orange;
}
</style>
<h1 id="orange-text" class="pink-text blue-text">Hello World!</h1>