首先理解爲什麼要有特殊性,元素在選擇的時候有多種選擇方法,會出現同一個元素被多個規則選中,所以怎麼知道元素對應的哪個規則就使用到了特殊性,也就是選擇器的優先級。
特殊性值表述有四個部分 如:0100、0001,0100比0001要大所以優先級高。那我們來看每個選擇器對應的值
- ID選擇器 ----------0 1 0 0
- 各個類屬性值、屬性、僞類選擇器 ----------0 0 1 0
- 元素、僞元素選擇器 ----------0 0 0 1
- 結合符和通配符 ----------0 0 0 0
h1 {color:red} /* 0 0 0 1*/
div p{color:yellow} /* 0 0 0 2*/
#id {color:purple} /* 0 1 0 0*/
div #id *[href] {color:silver} /* 0 1 1 1*/
所以我們比較其值大小就可以知道優先級。內聯樣式的特殊性值是 1 0 0 0,特殊性高於其他選擇器。
同時還存在一個!important重要性聲明,這個是沒有特殊性值的但是優先級最高。