国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
***[轉(zhuǎn)]CSS的優(yōu)先級(jí)特性Specificity

如果同個(gè)元素有兩個(gè)或以上沖突的CSS規(guī)則,瀏覽器有一些基本的規(guī)則來決定哪一個(gè)非常特殊而勝出。
它可能不像其它那么重要,大部分案例你不需要擔(dān)心沖突,但大型而且復(fù)雜的CSS文件,或有很多CSS文件組成的,可能產(chǎn)生沖突。
選擇器一樣的情況下后面的會(huì)覆蓋前面的屬性。比如:

p { color: red; }
p { color: blue; }
p元素的元素將是藍(lán)色,因?yàn)樽裱竺娴囊?guī)則
然而,你不可能經(jīng)常用相同的選擇器沖突達(dá)到目的,當(dāng)你使用嵌套選擇器,合理的沖突來了。比如:

div p { color: red; }
p { color: blue; }
也許你看起來p元素在div元素里面的顏色是藍(lán)色,就像后面p元素的規(guī)則,但是第一個(gè)選擇器的特性卻是紅色?;旧?,一個(gè)選擇器越多特性,樣式?jīng)_突的時(shí)候?qū)@示它的樣式。
一組嵌套選擇器的實(shí)際特性可以計(jì)算出來。基本的,使用ID選擇器的值是100,使用class選擇器的值是10,每個(gè)html選擇器的值是1。它們加起來就可以計(jì)算出特性的值。

 p的特性是1(一個(gè)html選擇器)
div p的特性是2(兩個(gè)html選擇器)
.tree的特性是10(1個(gè)class選擇器)
div p.tree的特性是1+1+10=12,(兩個(gè)html選擇器,一個(gè)class選擇器)
#baobab的特性是100(1個(gè)ID選擇器)
body #content .alternative p的特性是112(兩個(gè)html選擇器,一個(gè)ID選擇器,一個(gè)類選擇器)
按照上面的規(guī)則,div p.tree的特性比div p高,body #content .alternative p又比它們兩個(gè)都高。

css優(yōu)先級(jí)的四大原則:

原則一: 繼承不如指定

如果某樣式是繼承來的永遠(yuǎn)不如具體指定的優(yōu)先級(jí)高。

例子1:

CODE:

<style type="text/css">

<!--

*{font-size:20px}

.class3{ font-size: 12px; }

-->

</style>

<span class="class3">我是多大字號(hào)?</span>

運(yùn)行結(jié)果:.class3{ font-size: 12px; }

例子2:

CODE:

<style type="text/css">

<!--

#id1 #id2{font-size:20px}

.class3{font-size:12px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

運(yùn)行結(jié)果:.class3{ font-size: 12px; }

注意:后面的幾大原則都是建立在“指定”的基礎(chǔ)上的。

原則二: #ID >.class >標(biāo)簽選擇符

例子:

CODE:

<style type="text/css">

<!--

#id3 { font-size: 25px; }

.class3{ font-size: 18px; }

span{font-size:12px}

-->

</style>

<span id="id3" class="class3">我是多大字號(hào)?</span>

運(yùn)行結(jié)果:#id3 { font-size: 25px; }

原則三:越具體越強(qiáng)大。

解釋:當(dāng)對(duì)某個(gè)元素的CSS選擇符樣式定義的越具體,層級(jí)越明確,該定義的優(yōu)先級(jí)就越高。

CODE:

<style type="text/css">

<!--

.class1 .class2 .class3{font-size: 25px;}

.class2 .class3{font-size:18px}

.class3 { font-size: 12px; }

-->

</style>

<div class="class1">

<p class="class2"> <span class="class3">我是多大字號(hào)?</span> </p>

</div>

運(yùn)行結(jié)果:.class1 .class2 .class3{font-size: 25px;}

原則四:標(biāo)簽#id >#id ; 標(biāo)簽.class >.class

上面這條原則大家應(yīng)該也都知道,看例子

CODE:

<style type="text/css">

<!--

span#id3{font-size:18px}

#id3{font-size:12px}

span.class3{font-size:18px}

.class3{font-size:12px}

-->

</style>

<span id="id3">我是多大字號(hào)?</span>

<span class="class3">我是多大字號(hào)?</span>

運(yùn)行結(jié)果:span#id3{font-size:18px} | span.class3{font-size:18px}

很多人會(huì)有這樣的疑問,為什么不把這個(gè)原則四歸入原則一形成:

【 標(biāo)簽#ID >#ID >標(biāo)簽.class >.class >標(biāo)簽選擇符 >通配符 】 呢?或者將 “標(biāo)簽.class” 看作多更為具體的 “.class” 從而歸入原則二呢?后面我將解答各位的疑惑,這就涉及到CSS的解析規(guī)律---------這四大原則間也是有優(yōu)先級(jí)的,是不是有些糊涂了?別急,繼續(xù) 看。

*四大原則的權(quán)重

相信很多人都知道上面的四大原則,不要以為知道了這四大原則就能分辨css中那條代碼是起作用的,不信?那你5秒內(nèi)能肯定的知道下面這段代碼,測(cè)試中的文字的字號(hào)嗎?

CODE:

<style type="text/css">

<!--

.class1 p#id2 .class3{font-size:25px}

div .class2 span#id3{font-size:18px}

#id1 .class3{font-size:14px}

.class1 #id2 .class3{font-size:12px}

#id1 #id2{font-size:10px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

為了大家方便閱讀,我去掉了一些代碼。

四大原則的權(quán)重就是: 原則一 >原則二 >原則三 >原則四

解釋:

首先遵循原則一

有指定開始使用下面的原則,無指定則繼承離他最近的定義。

然后開始原則二

1、比較最高優(yōu)先級(jí)的選擇符

例子:

CODE:

<style type="text/css">

<!--

#id3{font-size:18px}

.class1 .class2 .class3{font-size:12px} /* 描述的再具體也不起作用 --- 原則二 */

.class3{font-size:18px}

div p span{font-size:12px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

運(yùn)行結(jié)果:#id3{font-size:18px}

刪掉上面CSS中的前兩行可以得出,如果沒有最高級(jí)別的#ID會(huì)尋找.class 即使后面的CSS按照“原則二” 描述的再具體也無法突破原則一。

2、如果兩條CSS的如果最高選擇符優(yōu)先級(jí)一樣,則比較他們的數(shù)量

例子:

CODE:

<style type="text/css">

<!--

.class1 #id3{font-size:12px}

.class1 .class2 #id3{font-size:14px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

運(yùn)行結(jié)果:.class1 .class2 #id3{font-size:14px}

3、如果最高選擇符級(jí)別和數(shù)量都一樣,則按照原則二比較他們下一級(jí),以此類推。

例子1:

CODE:

<style type="text/css">

<!--

#id1 .class2 .class3{font-size:14px}

div .class2 #id3{font-size:12px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

[color=Orange]

運(yùn)行結(jié)果:#id1 .class2 .class3{font-size:14px}

[/color]

*最高級(jí)選擇符的位置沒有高下之分,論證:[code]CODE:

<style type="text/css">

<!--

#id1 .class2 .class3{font-size:18px}

.class1 #id2 .class3{font-size:14px}

.class1 .class2 #id3{font-size:12px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

上例中更換3條CSS的先后可以得出,哪條位于最后,哪條起作用。說明他們的級(jí)別一樣,后面的將覆蓋前面的。

*將原則四歸入原則二的不合理性,論證:

CODE:

<style type="text/css">

<!--

.class1 span#id3{font-size:14px}

#id1 .class2 .class3{font-size:12px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

#id1 .class2 .class3{font-size:12px}

可以看到span#id3并不比#id1高出一個(gè)級(jí)別。

無結(jié)果開始原則三

如果比較結(jié)果,選擇符從最高級(jí)開始都對(duì)應(yīng),級(jí)別上的數(shù)量也相同,則開始比較誰更具體。

例子:

CODE:

<style type="text/css">

<!--

#id1 .class2 span{font-size:14px}

.class1 #id3{font-size:12px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

#id1 .class2 span{font-size:14px}

當(dāng)然也可以理解為在原則二層層比較中“少一個(gè)層級(jí)的樣式”,缺少的那個(gè)層級(jí)沒有“層級(jí)較多的樣式”多出的那個(gè)層級(jí)的級(jí)別高。(繞口令)

*將原則四歸入原則三的不合理性,論證:

CODE:

<style type="text/css">

<!--

.class2 .class3{font-size:14px}

span.class3{font-size:12px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

上例中可以看出,如果將原則四并入原則三,將span.class3看作兩層,那么應(yīng)該和.class2 .class3層級(jí)一樣多,那么應(yīng)該顯示12px,而事實(shí)不是這樣。

最終對(duì)決原則四

如果還分不出結(jié)果,則開始原則四的比較:

例子1:

CODE:

<style type="text/css">

<!--

.class1 p.class2 .class3{font-size:14px}

.class1 .class2 .class3{font-size:12px}

-->

</style>

<div id="id1" class="class1">

<p id="id2" class="class2"> <span id="id3" class="class3">我是多大字號(hào)?</span> </p>

</div>

.class1 p.class2 .class3{font-size:14px}

寫點(diǎn)我自己的總結(jié)

先看是否描述到該元素,再看最高級(jí)別的等級(jí)和數(shù)量(#id>class,html#id>#id),同級(jí)級(jí)別&數(shù)量一致時(shí),再看下一級(jí)屬性。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
【聊代碼】第三十四集 css樣式(之四)
HTML第二課——css【2】
CSS第一天-02-CSS基礎(chǔ)選擇器
DIV標(biāo)簽詳細(xì)介紹
css樣式順序覆蓋方式及權(quán)重計(jì)算詳解
css樣式
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服