在編寫html的過(guò)程中,我們會(huì)經(jīng)常為class屬性定義多個(gè)值,但是同樣會(huì)經(jīng)常發(fā)現(xiàn)自己定義的值無(wú)效!?。?
以前碰到這種情況我就直接重寫了,或者直接用id設(shè)置css屬性,今天想起來(lái)好像有些不對(duì)哦。。。我必須得去發(fā)現(xiàn)真理?。?!
代碼如下:
<div id="p" class="middle_div padding_10">
<span id="s" class="normal_span"></span>
</div>
我在兩個(gè)class里設(shè)置的顏色不同,在middle_div里設(shè)置的是紅色,在padding_10里設(shè)置綠色,
結(jié)果顯示的是綠色,這給我的第一感覺(jué)就是:方向反了!
于是我把兩個(gè)位置對(duì)換,還是綠色??!
這。。。。
難道是???
打開(kāi)css文件一看,果然padding_10在middle_div 前面,然后我把他們倆位置對(duì)換,
刷新瀏覽器,紅色?。?!
所以呢,在定義多個(gè)class值的時(shí)候,一定要注意,把自己最喜歡的樣式放在后面!
但是呢,如果你在padding_10前面加個(gè)div(假設(shè)父級(jí)元素是div),變成div.padding_10,然后你會(huì)發(fā)現(xiàn),不管它在哪,我們的p div始終是綠色的,
從這個(gè)例子可以看出來(lái),css樣式的優(yōu)先級(jí)是在加載css文件的時(shí)候就確定下來(lái)的,而不是由后來(lái)html里class屬性位置前后決定的。
更多信息請(qǐng)查看IT技術(shù)專欄