1. 程式人生 > >css-樣式優先順序演算法

css-樣式優先順序演算法

1.多重樣式優先順序

多重樣式(Multiple Styles):

如果外部樣式、內部樣式和內聯樣式同時應用於同一個元素,就是使多重樣式的情況。

一般情況下,優先順序如下:

(外部樣式)External style sheet <(內部樣式)Internal style sheet <(內聯樣式)Inline style

有個例外的情況,就是如果外部樣式放在內部樣式的後面,則外部樣式將覆蓋內部樣式。

   <style type="text/css">
     /* 內部樣式 */
     h3{color:green;}
   </style>

    <!-- 外部樣式 style.css -->
<link rel="stylesheet" type="text/css" href="style.css"/>
2.CSS樣式優先順序演算法如何計算?
  1. 內聯樣式表的權值最高 1000;
  2. ID 選擇器的權值為 100
  3. Class 類選擇器的權值為 10
  4. HTML 標籤選擇器的權值為 1

1.css優先順序

是由四個級別和各個級別出現的次數決定的,值從左到右,左面的最大,一級大於一級

2.優先順序演算法

每個規則對應一個初始四位數:0,0,0,0

若是行內樣式優先順序,則是1,0,0,0,高於外部定義

<div style=”color: red”>sjweb</div>

若是ID選擇符,則分別加0,1,0,0

若是類選擇符,屬性選擇符,偽類選擇符,則分別加0,0,1,0

若是元素選擇器,偽類選擇器,則分別加0,0,0,1

3.需要注意

!important的優先順序是最高的,但出現衝突時則需比較”四位數“

優先順序相同時,則採用就近原則

繼承得來的屬性,其優先順序最低

4.例項

body div p{color: green;}--Specificity值為0,0,0,3
Div # sjweb { font-size:12px;}--Specificity值為 0,1,0,1
html > body div [id=”totals”] ul li > p
{color:red;}--Specificity值為 0,0,1,6