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