IE條件註釋是微軟從IE5開始就提供的一種非標準邏輯語句,作用是可以靈活的為不同IE版本瀏覽器導入不同html元素,如:樣式表,html標籤等。很顯然這種方法的最大好處就在於屬於微軟官方給出的兼容解決方案而且還能通過W3C的效驗。
讓我們舉幾個例子來看:
<!--[if IE]> <link type="text/css" rel="stylesheet" href="my.css" /> <![endif]-->
因為只有IE5以上的版本才開始支援IE條件註釋,所有「只有IE」才能辨識的意思是「只有IE5版本以上」才能辨識。
<!--[if IE 8]> <link type="text/css" rel="stylesheet" href="my.css" /> <![endif]-->
# 辨識特定的IE版本,高了或低了都不可以。上例只有IE8才能辨識。
<!--[if !IE 7]> <link type="text/css" rel="stylesheet" href="my.css" /> <![endif]-->
上例中特定IE7版本不能識別,其他版本都能識別,當然要在IE5以上。
<!--[if gt IE 7]> <link type="text/css" rel="stylesheet" href="my.css" /> <![endif]-->
上例只有高於IE7的版本才能辨識。 IE7無法辨識。
<!--[if gte IE 7]> <link type="text/css" rel="stylesheet" href="my.css" /> <![endif]-->
上例中IE7和更高的版本都能辨識。
<!--[if lt IE 7]> <link type="text/css" rel="stylesheet" href="my.css" /> <![endif]-->
上例中只有低於IE7的版本才能識別,IE7無法辨識。
<!--[if lte IE 7]> <link type="text/css" rel="stylesheet" href="my.css" /> <![endif]-->
上例中IE7和更低的版本可以辨識。
上面那些程式碼好像很難記的樣子,其實只要稍微解釋一下關鍵字就很容易記住了。
lt:就是Less than的簡寫,也就是小於的意思。
lte:就是Less than or equal to的簡寫,也就是小於或等於的意思。
gt:就是Greater than的簡寫,也就是大於的意思。
gte:就是Greater than or equal to的簡寫,也就是大於等於的意思。
!:就是不等於的意思,跟javascript裡的不等於判斷符相同。
這樣解釋一下,是不是好記多了。
1、有人會試圖使用