首頁 >web前端 >css教學 >css選擇器優先順序是什麼? css基本選擇器優先權的介紹

css選擇器優先順序是什麼? css基本選擇器優先權的介紹

不言
不言原創
2018-09-28 10:05:2131616瀏覽

css的選擇器有很多種,那麼,自然而然的就會有優先權這一概念出現,所以,css選擇器優先順序是怎麼樣的呢?這篇文章將來跟大家介紹css選擇器優先權的排序,話不多說,我們會直接看正文內容。

在看css選擇器優先權順序前,我們先來簡單說說css基本選擇器有哪些?

1、標記選擇器(如:body,div,p,ul,li)

2、id選擇器(如:id="name",id="name_txt")

3、類別選擇器(如:id="name",id="name_txt")

#4、後代選擇器(如:#head .nav ul li 從父集到子孫集的選擇器)

5、子元素選擇器(如:div>p ,帶大於號>)

6、偽類選擇器(如:就是連結樣式, a元素的偽類,4種不同的狀態:link、visited、active、hover。)

看完了基本的css選擇器類型後,我們接著來看css優先權的概念。

當兩個規則都作用到了同一個html元素上時,如果定義的屬性有衝突,那麼應該用誰的值的,用到誰的值誰的優先權就高。

我們來看看css選擇器優先權的演算法:

每個規則對應一個初始"四位數":0、0、0、0
若是行內選擇符,則加1、0、0、0
若是ID選擇符,則加0、1、0、0
若是類別選擇符/偽類選擇符,則分別加0 、0、1、0
若是元素選擇符,則分別加0、0、0、1
演算法:將每條規則中,選擇符對應的數相加後得到的」四位數“ ,從左到右進行比較,大的優先權越高。  

看完了上述內容,那我們就來看看css選擇器優先權的具體排序。

css選擇器優先權最高到最低順序為:

1.id選擇器(#myid)

#2.類選擇器(.myclassname)

3.標籤選擇器(div,h1,p)

4.子選擇器(ul

5.後代選擇器(li a)

6.偽類別選擇(a:hover,li:nth-child)

最後,需要注意的是:  

!important的優先級是最高的,但出現衝突時則需比較」四位數「;
優先級相同時,則採用就近原則,選擇最後出現的樣式;
繼承得來的屬性,其優先級最低。

以上就是本篇文章的全部內容,關於css選擇器當然不只上述的六個選擇器,更多css選擇器的內容可以參考css使用手冊

以上是css選擇器優先順序是什麼? css基本選擇器優先權的介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn