2.0 KiB
2.0 KiB
id, title, challengeType, videoUrl, forumTopicId, dashedName
id | title | challengeType | videoUrl | forumTopicId | dashedName |
---|---|---|---|---|---|
bad87fee1348bd9aedf04756 | Class 選擇器的優先級高於繼承樣式 | 0 | https://scrimba.com/c/cGJDQug | 18253 | override-styles-in-subsequent-css |
--description--
我們的 pink-text
class 覆蓋了 body
元素的 CSS 樣式!
我們剛剛證明了 class 會覆蓋 body
的 CSS 樣式。 那麼下一個問題是,要怎麼樣才能覆蓋 pink-text
class 中所定義的樣式?
--instructions--
創建一個 blue-text
class,將元素的顏色設置爲藍色。 將它放在 pink-text
class 下面。
創建一個字體顏色爲 blue
的 blue-text
class,並確保它在 pink-text
下方聲明。
HTML 同時應用多個 class 屬性需以空格來間隔,例子如下:
class="class1 class2"
**注意:**HTML 元素裏應用的 class 的先後順序無關緊要。
但是,在 <style>
標籤裏面聲明的 class
順序十分重要,之後的聲明會覆蓋之前的聲明。 第二個聲明的優先級始終高於第一個聲明。 由於 .blue-text
是在後面聲明的,所以它的樣式會覆蓋 .pink-text
裏的樣式。
--hints--
h1
元素應包含 pink-text
class。
assert($('h1').hasClass('pink-text'));
h1
元素應包含 blue-text
class。
assert($('h1').hasClass('blue-text'));
blue-text
和 pink-text
需同時應用於 h1
元素上。
assert($('.pink-text').hasClass('blue-text'));
h1
元素的顏色應爲藍色。
assert($('h1').css('color') === 'rgb(0, 0, 255)');
--seed--
--seed-contents--
<style>
body {
background-color: black;
font-family: monospace;
color: green;
}
.pink-text {
color: pink;
}
</style>
<h1 class="pink-text">Hello World!</h1>
--solutions--
<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>