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

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

CSS選擇器種類、優(yōu)先級(jí)與匹配原理詳解

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

作為一個(gè)Web開發(fā)者,掌握必要的前臺(tái)技術(shù)也是很重要的,特別是在遇到一些實(shí)際問題的時(shí)候。這里給大家列舉一個(gè)例子:

給一個(gè)p標(biāo)簽增加一個(gè)類(class),可是執(zhí)行后該class中的有些屬性并沒有起作用。通過Firebug查看,發(fā)現(xiàn)沒有起作用的屬性被覆蓋了。這個(gè)時(shí)候突然意識(shí)到了CSS選擇器的優(yōu)先級(jí)問題,這里就CSS選擇器的優(yōu)先級(jí)問題做了一些總結(jié)。

51CTO推薦閱讀:巧妙地使用CSS選擇器

選擇器種類

嚴(yán)格來講,選擇器的種類可以分為三種:標(biāo)簽名選擇器、類選擇器和ID選擇器。而所謂的后代選擇器和群組選擇器只不過是對(duì)前三種選擇器的擴(kuò)展應(yīng)用。而在標(biāo)簽內(nèi)寫入style=""的方式,應(yīng)該是CSS的一種引入方式,而不是選擇器,因?yàn)楦揪蜎]有用到選擇器。而一般人們將上面這幾種方式結(jié)合在一起,所以就有了5種或6種選擇器了。

三種基本的選擇器類型

語法如下:

◆標(biāo)簽名選擇器,如:p{},即直接使用HTML標(biāo)簽作為選擇器。

◆類選擇器,如.polaris{}。

◆ID選擇器,如#polaris{}。

注意,ID選擇器跟類選擇器有很大的不同:一個(gè)頁(yè)面內(nèi)不能出現(xiàn)相同的ID;再就是ID也是后臺(tái)開發(fā)人員會(huì)經(jīng)常用的,所以前端開發(fā)人員應(yīng)該盡量少的使用。當(dāng)然跟后臺(tái)人員的工作配合十分嫻熟之后,這些都不會(huì)成為限制。

擴(kuò)展選擇器

◆后代選擇器,如.polaris span img{},后代選賊器實(shí)際上是使用多個(gè)選擇器加上中間的空格來找到具體的要控制標(biāo)簽。

◆群組選擇器,如div,span,img{},群組選擇器實(shí)際上是對(duì)CSS的一種簡(jiǎn)化寫法,只不過把有相同定義的不同選擇器放在一起,省了很多代碼。

選擇器的優(yōu)先級(jí)別

了解了各種選擇器后,還有一個(gè)重要的知識(shí)點(diǎn)就是CSS選擇器的優(yōu)先級(jí)。這也就是為什么polaris會(huì)遇到文章開頭的問題。舉個(gè)簡(jiǎn)單的例子:

復(fù)制代碼
代碼如下:
<div class="polaris">
<span class="beijixing">
beijixing
</span>
<span>
polaris
</span>
</div>

如果已經(jīng)把.polaris下面span內(nèi)的字體設(shè)置成紅色:

.polaris span {color:red;}
這時(shí),如果要改變.beijixing的顏色為藍(lán)色,用下面的命令是不能實(shí)現(xiàn)的:

復(fù)制代碼
代碼如下:
.beijixing {color:blue;}

出現(xiàn)這種情況就是因?yàn)楹笠粋€(gè)命令的優(yōu)先級(jí)不夠,兩條相互沖突的樣式設(shè)置,瀏覽器只會(huì)執(zhí)行優(yōu)先級(jí)較高的那個(gè)。

那么選擇器的優(yōu)先級(jí)是怎么規(guī)定的呢?

一般而言,選擇器越特殊,它的優(yōu)先級(jí)越高。也就是選擇器指向的越準(zhǔn)確,它的優(yōu)先級(jí)就越高。通常我們用1表示標(biāo)簽名選擇器的優(yōu)先級(jí),用10表示類選擇器的優(yōu)先級(jí),用100標(biāo)示ID選擇器的優(yōu)先級(jí)。比如上例當(dāng)中 .polaris span {color:red;}的選擇器優(yōu)先級(jí)是 10 + 1 也就是11;而 .polaris 的優(yōu)先級(jí)是10;瀏覽器自然會(huì)顯示紅色的字。理解了這個(gè)道理之后下面的優(yōu)先級(jí)計(jì)算自是易如反掌:
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄大仙区| 平谷区| 遂宁市| 平湖市| 和平区| 南澳县| 连云港市| 马尔康县| 大丰市| 阜宁县| 二连浩特市| 于都县| 江山市| 翁源县| 呼和浩特市| 尼木县| 纳雍县| 霍邱县| 疏勒县| 黄石市| 军事| 金阳县| 万载县| 拜城县| 浦江县| 大田县| 合川市| 阿坝| 肥城市| 隆德县| 长白| 彩票| 天柱县| 光泽县| 班戈县| 陕西省| 凤城市| 沽源县| 永嘉县| 华安县| 革吉县|