對於一個後臺程序員,寫CSS本身就已經是頭疼的事情,如今的瀏覽器被搞的已經亂七八糟,最可恨的當屬是Id6,遠離了W3C標準不知道多少了,不過如果我們設計出的網站,爲了使各種瀏覽器都得兼容,還是得Hack一下的。
selector{
property:value; /* 所有瀏覽器 */
property:value/9; /* 所有IE瀏覽器 */
+property:value; /* IE7 */
_property:value; /* IE6 */
}
當然,注意順序。根據CSS的優先性,上面的寫法,分別針對Firefox、IE8、IE7和IE6顯示值。讓我們看看這個演示:
演示的CSS代碼如下:
p.ie{
height:60px;text-align:center;line-height:60px;border:1px dashed #bbb;background:#f7f7f7;font:15;
color:blue; // 所有瀏覽器
color:brown/9; // 所有IE瀏覽器
+color:red; // IE7
_color:green; // IE6
}
哈,事實就這麼簡單。你看到的是那一句話呢?如果你多個瀏覽器都測試了,就會看到,顯示的文字和顏色是不同的。爲什麼?看看我的HTML中這個段落是這樣寫的:
<p class="ie">
<span style="display:block;display:none/9;">嘿嘿,小子竟然也用Firefox,藍色文字。</span>
<!--[if IE 8]>不錯不錯,挺先進的嘛,使用IE8呢!文字是褐色的。<![endif]-->
<!--[if IE 7]>你,IE7,紅色文字!<![endif]-->
<!--[if IE 6]>孩子,雖然顯示的是綠色文字,不過,IE6可不是好東西呢!<![endif]-->
</p>
對,就是IE條件註釋+CSS的結果。順路學一下IE條件註釋吧。
測試代碼: