一般直接問(wèn)important的樣式不被覆蓋,這樣是誤解的,因?yàn)榻鉀Q辦法也需要使用important 解決辦法一: div div 這樣下面的樣式就覆蓋了上面的樣式,使第一個(gè)樣式失效 解決辦法二:123456 行內(nèi)樣式級(jí)別大于,外部樣式,所以這樣也可以去除以前設(shè)置的important的樣式。 其他的方式,我還真沒(méi)有找到能可以代替的辦法,希望我的回答對(duì)你有所幫助?。?!
1、這個(gè)屬性可以讓瀏覽器優(yōu)選執(zhí)行這個(gè)語(yǔ)句,加上!importanrt可以覆蓋父級(jí)的樣式。具體的效果可以用一個(gè)案例演示,首先新建一個(gè)html文件,先新建一個(gè)外圍div,在在里面設(shè)置兩個(gè)子div,給父div設(shè)置class屬性parent,第二個(gè)子div增加import的class屬性:2、然后在上方的style中設(shè)置樣式,給div設(shè)置寬度和高度,并給它背景顏色;給import類(lèi)設(shè)置背景色,并加入!important 屬性就會(huì)覆蓋父容器的背景顏色:3、最后來(lái)到瀏覽器中,就可以看到第二個(gè)div的背景顏色被覆蓋了:簡(jiǎn)單來(lái)說(shuō),每個(gè)瀏覽器對(duì)某些css的樣式解釋的不太一樣,這樣頁(yè)面上顯示的就不一樣,但是要保持每個(gè)瀏覽器都同樣顯示效果的話,那么只有對(duì)有差異的瀏覽器寫(xiě)它自己認(rèn)識(shí)而別的瀏覽器不認(rèn)識(shí)的樣式來(lái)達(dá)到顯示相同的目的,這個(gè)在css中叫hack。所以我們就需要知道某個(gè)瀏覽器認(rèn)識(shí)某些寫(xiě)法了。當(dāng)遇到問(wèn)題的時(shí)候就可以使用這些hack來(lái)解決問(wèn)題了,不過(guò)對(duì)于你說(shuō)的這個(gè)hack我倒是沒(méi)用過(guò),只要代碼寫(xiě)的好,基本上除了ie6都是可以通過(guò)的CSS中“!important”可以使它之前的樣式優(yōu)先執(zhí)行,比如說(shuō)這樣:body color : red !important;}body color : black;}顏色color出現(xiàn)了兩次,而加上“!important”的“color : red;”總會(huì)得到優(yōu)先執(zhí)行,瀏覽器將對(duì)另一個(gè)“color : black;”視而不見(jiàn)。之所以會(huì)說(shuō)得復(fù)雜,是因?yàn)椤癐E 6.0一直都不支持這個(gè)語(yǔ)法,而其他的瀏覽器都支持。因此可以利用這一點(diǎn)來(lái)分別給IE和其他瀏覽器不同的樣式定義”,我認(rèn)為這只不過(guò)是一個(gè)小技巧罷了。CSS中的!important一般都是用于對(duì)低版本的除了iE 6 ,用來(lái)做hack的,后面綴上了!important的css語(yǔ)句,讓瀏覽器選執(zhí)行這個(gè)語(yǔ)句,因?yàn)閏ss有繼承的樣式,加上!importanrt可以覆蓋父級(jí)的樣式。 IE6不認(rèn)識(shí)它的,IE7和別的瀏覽器中可以用,用來(lái)處理瀏覽器的兼容性,這里寫(xiě)段代碼:黃色背景假如我要對(duì)一個(gè)div在ie7中寬為200px,在ie6中寬180px,則:div div !important:表示某條屬性(聲明)具體最高的優(yōu)化級(jí),所以雖然看起來(lái)下面的把上方的屬性覆蓋了,但真正由于上面度200的優(yōu)化級(jí)最高,所以最后div的寬還是200px!important:ie7及以上、firefox都支持,但ie6不支持,所以下面的屬性會(huì)把上面的覆蓋,即在ie6寬顯示為180px設(shè)置此項(xiàng)主要的目的就是為了達(dá)到在各種及各版本的瀏覽器之間兼容,這里如果考慮周全的話還需對(duì)ie7及ff進(jìn)行區(qū)別了