為了計算規則的特殊性,給每個選擇器都分配乙個數字值。然後,講規則的每個選擇器的值加在一起,計算出規則的特殊性。一般情況下,如果乙個特定選擇器中的選擇器數量少於10個,可以以10 為基數計算特殊性。
選擇器的特殊性分為4個等級:a、b、c和d,各等級特殊性逐漸降低(即a>b>c>d)。其中,
根據以上規則,可以計算下表各元素的特殊性
選擇器特殊性
以10為基數的特殊性
style = 「」
1,0,0,0
1000
0,2,0,0
200content .dataposeted {}
0,1,1,0
110div#content
0,1,0,1
101content {}
0,1,0,0
100p.comment .dateposted {}
0,0,2,1
21p.comment {}
0,0,1,1
11div p {}
0,0,0,2
2p {}
0,0,0,11
由此,可以簡單歸納為:用style屬性編寫的規則總是比其他任何規則特殊;具有id選擇器的規則比沒有id選擇器的規則特殊;具有類選擇器的規則比只有型別選擇器的規則特殊;如果兩個規則的特殊性相同,那麼後定義的規則優先。
CSS選擇器權重計算
css各種選擇器的權重 1.id選擇器 100 2.類 屬性 偽類選擇器 10 3.元素 偽元素選擇器 1 4.其他選擇器 0 如果有兩個css樣式都作用於某元素,如 id link a href id 100 link 10 a 1 href 0 111 id link.active id 100...
css選擇器 特殊性
首先理解為什麼要有特殊性,元素在選擇的時候有多種選擇方法,會出現同乙個元素被多個規則選中,所以怎麼知道元素對應的哪個規則就使用到了特殊性,也就是選擇器的優先順序。特殊性值表述有四個部分 如 0100 0001,0100比0001要大所以優先順序高。那我們來看每個選擇器對應的值 h1 0 0 0 1 ...
CSS 選擇器權重計算規則
下面從網易 規範中摘抄的內容,學習他們確定選擇器等級的方式。最近看了 精通css 這部分內容應該是從2.3節摘抄來的。選擇器等級 a 行內樣式style。b id選擇器的數量。c 類 偽類和屬性選擇器的數量。d 型別選擇器和偽元素選擇器的數量。選擇器等級 a,b,c,d style 1,0,0,0 ...