在CSS 框架和模板出現以后,一些布局的問題可以很容易解決掉,但是顯然這不能解決全部問題。這些問題通常可以通過普通的CSS來解決,但是有時候只針對IE顯示一些(樣式)信息可能會更好。
這是用條件注釋是可以實現的。條件注釋只支持Windows系統中的IE瀏覽器。通過這些技巧,我們可以為基于Windows的IE5、6、7、8添加一些特殊的行為。這樣做的好處是,HTML和CSS代碼可以通過驗證。
條件注釋的格式
所有可用的條件注釋標簽是基于相同的原理的。這些條件注釋可用于所有的IE瀏覽器版本。
<!–[if IE]>
如果用戶使用IE瀏覽器,這里的信息會生效。
<![endif]–>
根據情況不同,你需要添加一個瀏覽器版本號。比如,或許你想讓IE5.5使用一個不同的樣式表:
<!–[if IE 5.5]>
<link rel=”stylesheet” href=”css/ie5.css” type=”text/css” media=”screen, projection” />
<![endif]–>
或者只針對IE7:
<!–[if IE 7]>
<link rel=”stylesheet” href=”css/ie.css” type=”text/css” media=”screen, projection” />
<![endif]–>
你已經掌握了要領了,是吧?
我們還能用條件注釋做什么?
微軟同樣為這些條件注釋添加了一些參數。比如,我們可以使用高于或等于某個版本、低于或等于某個版本。添加這些的確很方便。
比如說,我們要給IE7以及以下的瀏覽器添加一個不同的樣式表,我們可以這樣做:
<!–[if lte IE 7]>
<link rel=”stylesheet” href=”css/ie.css” type=”text/css” media=”screen, projection” />
<![endif]–>
或者我們想為IE6以上的瀏覽器創建一個不同的樣式表:
<!–[if gte IE 6]>
<link rel=”stylesheet” href=”css/ie.css” type=”text/css” media=”screen, projection” />
<![endif]–>
我們可以在我們的條件注釋中使用以下參數:
lte – 低于或等于
lt – 低于
gte – 高于或等于
gt – 高于
(IE6)|(IE7) – Internet Explorer 6或 Internet Explorer 7
(IE6)&(IE7) – Internet Explorer 6 和 Internet Explorer 7
更多函數
http://msdn.microsoft.com/en-us/library/ms537512(VS.85).aspx
使用條件注釋讓用戶升級他們的過時的瀏覽器
我通常不使用條件注釋來修正瀏覽器bug。我使用他們的方法是告訴人們,他們使用的是一個過時的瀏覽器。在此類信息里面,我告訴他們,為了安全和更多功能,他們應該升級他們的瀏覽器。
<!–[if lt IE 7]>
|
新聞熱點
疑難解答