1. 程式人生 > 實用技巧 >選擇器的優先順序/權值計算和!important

選擇器的優先順序/權值計算和!important

內聯樣式就是<div style="color:red;"> 如此

選擇器的優先順序依次是: 內聯樣式 > id選擇器 > 類選擇器 > 標籤選擇器 > 萬用字元選擇器

權值計算-特殊性:

p{color:red;}
.first{color:green;}
<p class="first">三年級時,我還是一個<span>膽小如鼠</span>的小女孩。</p>

p和.first都匹配到了p這個標籤上,那麼會顯示哪種顏色呢?green是正確的顏色,那麼為什麼呢?是因為瀏覽器是根據權值來判斷使用哪種css樣式的,權值高的就使用哪種css樣式。

下面是權值的規則:

標籤的權值為1,類選擇符的權值為10,ID選擇符的權值最高為100。例如下面的程式碼:

p{color:red;} /*權值為1*/
p span{color:green;} /*權值為1+1=2*/
.warning{color:white;} /*權值為10*/
p span.warning{color:purple;} /*權值為1+1+10=12*/
#footer .note p{color:yellow;} /*權值為100+10+1=111*/

注意:還有一個權值比較特殊--繼承也有權值但很低,有的文獻提出它只有0.1,所以可以理解為繼承的權值最低。

擇器最高層級!important

p{color:red!important;}類似這樣書寫
其他注意:
這裡注意當網頁製作者不設定css樣式時,
瀏覽器會按照自己的一套樣式來顯示網頁。
並且使用者也可以在瀏覽器中設定自己習慣的樣式,比如有的使用者習慣把字號設定為大一些,
使其檢視網頁的文字更加清楚。這時注意樣式優先順序為:瀏覽器預設的樣式 < 網頁製作者樣式 < 使用者自己設定的樣式,
但記住!important優先順序樣式是個例外,權值高於使用者自己設定的樣式。