セレクタ名 | 例 | 点数 |
---|---|---|
ユニバーサルセレクタ | * | 0 |
要素セレクタ・擬似要素 | h1、::after | 1 |
属性セレクタ・classセレクタ・擬似クラス | .title、:hover | 10 |
idセレクタ | #wrap | 100 |
インライン記述(style属性) | <p style="color:red"> | 1000 |
!important | color:red!important; | 10000 |
上記の表を元に計算します。
例1)
HTML
<h1 id="midashi" class="title">大見出し<h1>
CSS
#midashi{
color:red;
}
.title{
color:green;
}
h1{
color:blue;
}
この場合、大見出しの色は赤になります。#midashiは、idセレクタなので100点、
.titleは、classセレクタなので10点、
h1は、要素セレクタなので1点。
よって、idセレクタである、#midashiが優先されます。
例2)
HTML
<div id="about_box" class="box">
<p id="text" class="lead">ここがリード分です</p>
</div>
CSS
#text{
color:red;
}
.box .lead{
color:green;
}
#about_box p{
color:blue;
}
この場合、pタグの色は、何色になるでしょうか。正解は青です。
#textは、idセレクタで100点。
.box .leadは、クラスセレクタが2個で、10点+10点=20点
#about_box pは、idセレクタと要素セレクタで、100点+1点=101点
こんな風に、使っているセレクタに該当する点数を、全部足して、一番高い点数のものを優先します。