在編寫(xiě)html的過(guò)程中,我們會(huì)經(jīng)常為class屬性定義多個(gè)值,但是同樣會(huì)經(jīng)常發(fā)現(xiàn)自己定義的值無(wú)效!??!
以前碰到這種情況我就直接重寫(xiě)了,或者直接用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屬性位置前后決定的。