CSS選擇器,以及選擇器的優(yōu)先級(jí)如何計(jì)算?

1、類別選擇器

類別選擇器根據(jù)類名來(lái)選擇,前面以“.”來(lái)標(biāo)志。

在HTML中,元素可以定義一個(gè)class的屬性,并且多個(gè)元素都可以重復(fù)應(yīng)用這個(gè)屬性。

2、標(biāo)簽選擇器

一個(gè)完整的HTML頁(yè)面是有很多不同的標(biāo)簽組成,如:body,div,p,ul,li,而標(biāo)簽選擇器,則是 決定哪些標(biāo)簽采用相應(yīng)的css樣式。

3、ID選擇器

ID選擇器可以為標(biāo)有特定ID的HTML元素制定特定的樣式。根據(jù)元素ID來(lái)選擇元素,具有唯一性,這意味著同一ID在同一文檔頁(yè)面中只能出現(xiàn)一次。例如,你將一個(gè)元素的id取值為“name”,那么在同一頁(yè)面你就不能再將其他元素id取名為“name”了。

前面以“#”號(hào)來(lái)標(biāo)志,在樣式里面可以這樣定義

4、通用選擇器

用過(guò)“*”號(hào)來(lái)表示。如下代碼表示所有元素的內(nèi)外邊距都為0,所有的字體都為微軟雅黑。他可以清除不同瀏覽器的默認(rèn)樣式。

同時(shí)通用選擇器還可以和后代選擇器組合。如下表示所有p元素后代的所有元素都應(yīng)用這個(gè)樣式。

注意:但是如果你在p標(biāo)簽里嵌套了一個(gè)p標(biāo)簽,就會(huì)出現(xiàn)瀏覽器不能解析的情況,因此要避免這種情況發(fā)生。.

5、后代選擇器

后代選擇器也稱為包含選擇汽車,用來(lái)選擇特定元素或元素組的后代,將對(duì)父元素的選擇放在前面,對(duì)子元素的選擇放在后面,中間加一個(gè)空格分開(kāi)。后代選擇器中的元素不僅僅只能有兩個(gè),對(duì)于多層子線后代關(guān)系,可以有多個(gè)空格加以分開(kāi)。

如下例子定義了所有class屬性為father的元素下面的class屬性為child的顏色為紅色。

6、子選擇器

請(qǐng)注意這個(gè)選擇器與后代選擇器的區(qū)別,子選擇器只是選擇元素的直接后代,即僅僅作用于第一個(gè)后代。后代選擇器通過(guò)空格來(lái)進(jìn)行選擇,而子選擇器是通過(guò)“>”進(jìn)行選擇

7、偽類選擇器

即鏈接樣式。a元素的偽類,存在4中不同的狀態(tài):link、visited、active、hover。

8、群組選擇器

具有相同樣式的標(biāo)簽分組顯示,將具有多個(gè)相同屬性的元素,合并群組進(jìn)行選擇,定義同樣的css屬性,這大大的提高了編碼效率,同時(shí)也減少了css文件的體積。

9、相鄰?fù)x擇器

如一個(gè)標(biāo)題h1元素后面緊跟了兩個(gè)段落p元素,我們想定位第一個(gè)段落p元素,對(duì)它應(yīng)用樣式,就可以使用相鄰?fù)x擇器。兩個(gè)元素之間用“+”進(jìn)行連接。

問(wèn)題一:如果是十一個(gè)class選擇器和一個(gè)ID選擇器,系統(tǒng)會(huì)以哪個(gè)優(yōu)先?

解答:十一個(gè)class的選擇器和一個(gè)ID選擇器系統(tǒng)會(huì)以ID選擇器優(yōu)先

問(wèn)題二:對(duì)多個(gè)選擇器使用的優(yōu)先級(jí)是怎么進(jìn)行計(jì)算的?

解答:對(duì)于不同類別的選擇器,以以下原則進(jìn)行排序:

1、在屬性后面使用!important會(huì)覆蓋頁(yè)面內(nèi)任何位置定義的元素樣式。

2、作為style屬性寫(xiě)在元素內(nèi)的樣式

3、id選擇器

4、類選擇器

5、標(biāo)簽選擇器

6、通配符選擇器

7、瀏覽器自定義或子元素集成父類的樣式

將上面的稍微總結(jié)一下就是:

!important>行內(nèi)樣式>ID選擇器>類選擇器>標(biāo)簽>通配符>繼承>瀏覽器默認(rèn)屬性

同一級(jí)別中后寫(xiě)的會(huì)覆蓋先寫(xiě)的樣式。

問(wèn)題三:子選擇器和后代選擇器的區(qū)別?

解答:這個(gè)在前面有講到,子選擇器只是選擇元素的直接后代,即僅僅作用于第一個(gè)后代,后代選擇器則可作用于孫子代、曾孫子代。后代選擇器通過(guò)空格來(lái)進(jìn)行選擇,而子選擇器是通過(guò)“>”進(jìn)行選擇。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容