css優先順序包含四個級別(文內選擇器,id選擇器,class選擇器,元素選擇器)以及各級別出現的次數。根據這四個級別出現的次數計算得到css的優先順序。
css優先順序的計算規則如下:
* 頁面中直接設定style,加1,0,0,0
* 每個id選擇器(如 #id),加0,1,0,0
* 每個class選擇器(如 .class)、每個屬性選擇器(如 [attribute=])、每個偽類(如 :hover)加0,0,1,0
* 每個元素選擇器(如p)或偽元素選擇器(如 :firstchild)等,加0,0,0,1
然後,將這四個數字分別累加,就得到每個css定義的優先順序的值,
然後從左到右逐位比較大小,數字大的css樣式的優先順序就高。
例子:css檔案或中如下定義:
1. h1
/* 乙個元素選擇符,結果是0,0,0,1 */
2. body h1
/* 兩個元素選擇符,結果是 0,0,0,2 */
3. h2.grape
/* 乙個元素選擇符、乙個class選擇符,結果是 0,0,1,1*/
4. li#answer
/* 乙個元素選擇符,乙個id選擇符,結果是0,1,0,1 */
5. 元素的style屬性中如下定義:h1
/* 頁面中定義,乙個元素選擇符,結果是1,0,0,1*/
如此以來,h1元素的顏色是藍色。
注意:1、!important宣告的樣式優先順序最高,如果衝突再進行計算。
2、如果優先順序相同,則選擇最後出現的樣式。
3、繼承得到的樣式的優先順序最低。
選擇器優先順序 CSS選擇器優先順序總結
css選擇器優先順序這個問題,相信有點經驗前端都會認為非常簡單,但是我們今天還是來總結一下吧。相信大家應該很少直接在html頁面寫樣式吧,一般都是用link標籤匯入css樣式表。使用者自定義樣式表就是我們用link標籤引入的css樣式表,為了保持不同瀏覽器下樣式相同,所以我們的自定義樣式表一般都會覆...
css選擇器優先順序
css優先順序即css樣式在瀏覽器中被解析出來的先後順序。css優先順序包含四個級別 行內樣式,id選擇符,class類選擇符,元素選擇符 以及各級別出現的次數。繼承是css的乙個主要特徵,然後繼承的權重很低,比普通元素還要低。1.行內樣式 類似css 的樣式 的優先順序為1,0,0,0,始終高於外...
css選擇器優先順序
比如有這樣一段html id blakefez blakefezdiv div blakefez style 那麼這時候,上面的blakefez會顯示上面顏色呢?這裡就要考慮到css選擇器的優先順序。css選擇器的優先順序是由重要性 特殊性 疊層這三個因素決定的。重要性 什麼是重要性呢?就是看css...