css-樣式優先順序演算法
阿新 • • 發佈:2018-12-26
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樣式優先順序演算法如何計算?
- 內聯樣式表的權值最高 1000;
- ID 選擇器的權值為 100
- Class 類選擇器的權值為 10
- 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