css中的!important是一個非常重要的屬性,有時候發(fā)揮著非常大的作用,VeVb.com這方面的知識并不是非常多,我們看下面的文章,對它作比較感觀的了解。
前幾天寫一些css代碼的時候又難為我了,因為那個該死的ie6對css的支持是如此的差勁,以前我還沒注意過,因為做的東西基本都是基于ie的,可是我這次為博客寫的css要支持不止ie一個瀏覽器,可恨的是我裝的windows 7,這里面自帶的是ie8瀏覽器,我自認為已經(jīng)沒有問題了,可是打開ie6,仍然出現(xiàn)錯位,于是我決定看看ie6到底是什么情況。
我把所有的css塊兒全部使用邊框包起來,結果看到在ie中兩個div之間的距離明顯要寬于其他瀏覽器,比如你寫一個div的margin屬性為20px,那么在ie中就好像是40px一樣,這也就是為什么本來精度計算的剛剛好,在ie下卻偏偏錯位的原因。
后來我看到了!important這個屬性,這個屬性其實也是css規(guī)范中的,結果ie6愣是不支持,也正因為它不支持,才讓很多的csser們找到了解決的方法。一般來講,在css中,如果在同一個css塊中寫下兩個同樣的屬性,那么其實是按照最下面的來執(zhí)行的,比如說:
.home{
margin-left:20px;
margin-left:40px;
}
那么在執(zhí)行的時候其實是按照40px來執(zhí)行的,!important的出現(xiàn)就是為了讓用戶自己設置被執(zhí)行語句的優(yōu)先級。如果把上面的語句改為:
.home{
margin-left:20px!important;
margin-left:40px;
}
那么在火狐、google瀏覽器以及ie7以上版本下將會按照20px來執(zhí)行,而在ie6下卻仍然按照40px來執(zhí)行,因為ie6并不支持!important規(guī)范,我們就可以按照這個規(guī)則來滿足ie6的設計需要,什么時候發(fā)現(xiàn)ie6和其他瀏覽器顯示效果不同,那么就設置兩個,在上面的一個加入!important標記,而下面的一句則不需要添加,這樣ie6就按照下面的來執(zhí)行了。資深的csser說:如今的css處處!important。這可都是天殺的ie6惹的禍,大家說ie6就是一坨代謝產(chǎn)物一點也不為過。
新聞熱點
疑難解答