国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > CSS > 正文

權(quán)重和層疊規(guī)則決定了CSS樣式優(yōu)先級(jí)

2024-07-11 08:35:03
字體:
供稿:網(wǎng)友

首先,給大家看一篇關(guān)于CSS優(yōu)先級(jí)的示例


<span style=”font-size:14px;”><html>
<head>
<style type=”text/css”>
#redP p {
/* 權(quán)值 = 100+1=101 */
color:#F00; /* 紅色 */
}
#redP .red em {
/* 權(quán)值 = 100+10+1=111 */
color:#00F; /* 藍(lán)色 */
}
#redP p span em {
/* 權(quán)值 = 100+1+1+1=103 */
color:#FF0;/*黃色*/
}
</style>
</head>
<body>
<div id=”redP”>
<p class=”red”>red
<span><em>em red</em></span>
</p>
<p>red</p>
</div>
</body>
</html></span>

一、基本的優(yōu)先級(jí)規(guī)則

比較同一級(jí)別的個(gè)數(shù),數(shù)量多的優(yōu)先級(jí)高,如果相同即比較下一級(jí)別的個(gè)數(shù),至于各級(jí)別的優(yōu)先級(jí)如下:

important > 內(nèi)聯(lián) > ID > 類 > 標(biāo)簽 | 偽類 | 屬性選擇 > 偽對(duì)象 > 通配符 > 繼承

二、CSS權(quán)重規(guī)則

在《頁面重構(gòu)中的模塊化設(shè)計(jì)》中提到,影響CSS樣式權(quán)重,有兩個(gè)重要因素:

A:樣式的優(yōu)先級(jí)跟樣式定義的順序有關(guān)

B:權(quán)值的大小跟選擇器的類型和數(shù)量有關(guān)

一般來說,在同一個(gè)CSS文件中,如果有兩個(gè)同名的樣式,則后定義的會(huì)覆蓋先定義的。選擇器類型的優(yōu)先級(jí)見(一)。

那么,CSS的權(quán)重是怎么算的呢?

一個(gè)selector的權(quán)重表示方式:0.0.0.0,按照計(jì)算規(guī)則給每位填充數(shù)字,對(duì)應(yīng)位置相等,則比較下一位。

權(quán)重的計(jì)算規(guī)則如下:(為方便,用A.B.C.D代替各位置的值)

1、內(nèi)嵌樣式:A=1,B=C=D=0(即1.0.0.0)

2、ID樣式:selector中帶幾個(gè)ID,第2位就加幾個(gè)1 如#header{color:red},就是A=C=D=0,B=1(即0.1.0.0)

3、類,偽類,以及屬性的個(gè)數(shù)就是第三位的值:

.a.b[type="text"]:hover{},選擇器中有2個(gè)類,1個(gè)屬性,1個(gè)偽類,所以它的第3位為4, A=B=D=0,C=4,(即0.0.4.0)

4、偽元素和標(biāo)簽元素的個(gè)數(shù)就是第四位的值

p:first-letter,有一個(gè)標(biāo)簽元素p和偽元素first-letter,值為2,A=B=C=0,D=2(即0.0.0.2)

5、通配符和繼承得到的CSS屬性對(duì)權(quán)重沒有影響

三、幾個(gè)示例

針對(duì)以上,看以下幾個(gè)示例

1、.a .b .c {color:red;} //0.0.3.0 說明:只有三個(gè)類

2、*{…} //0.0.0.0 說明:通配符對(duì)權(quán)重沒有影響

3、.a .b a {color:green} //0.0.2.1 說明:兩個(gè)類和一個(gè)標(biāo)簽

4、#hid {color:black;} //0.1.0.0 說明:只有一個(gè)ID

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 广东省| 溧阳市| 屏山县| 绥江县| 安远县| 荆州市| 莱芜市| 平湖市| 莱芜市| 西林县| 陵水| 十堰市| 赫章县| 安化县| 钟祥市| 白沙| 中卫市| 明星| 巢湖市| 罗源县| 东阳市| 桦川县| 吴旗县| 武山县| 疏附县| 田林县| 邯郸县| 安岳县| 哈尔滨市| 北辰区| 新干县| 象山县| 同心县| 基隆市| 横峰县| 安福县| 房山区| 三穗县| 东宁县| 新晃| 北碚区|