IE環境下判斷IE版本的語句...[if lte IE 6]……[endif][if lte IE 7]……[endif]

這麼多年竟然不知道IE版本的判斷語句,深深的被自己折服!

IE下判斷IE版本的語句...[if lte IE 6]……[endif] 


複製代碼
代碼如下:

<!--[if IE 6]> 
<![endif]--> 
只有IE6版本可見 
<!--[if lte IE 6]> 
<![endif]--> 
IE6及其以下版本可見 
<!--[if gte IE 6]> 
<![endif]--> 
IE6及其以上版本可見 
<!--[if IE 7]> 
<![endif]--> 
只有IE7版本可見 
<!--[if lte IE 7]> 
<![endif]--> 
IE7及其以下版本可見 
<!--[if gte IE 7]> 
<![endif]--> 
IE7及其以上的版本可見 
<!--[if IE 8]> 
<![endif]--> 
只有IE8版本可見 
<!--[if lte IE 8]> 
<![endif]--> 
IE8及其以下的版本可見 
<!--[if gte IE 8]> 
<![endif]--> 
IE8及其以上的版本可見 
<![if !IE]> 
<![endif]> 
除了IE以外的版本 


用法: 
(1) 
可使用如下代碼檢測當前IE瀏覽器的版本(注意:在非IE瀏覽器中是看不到效果的) 

複製代碼
代碼如下:

<!––[if IE]> 
<h1>您正在使用IE瀏覽器</h1> 
<!––[if IE 5]> 
<h2>版本 5</h2> 
<![endif]––> 
<!––[if IE 5.0]> 
<h2>版本 5.0</h2> 
<![endif]––> 
<!––[if IE 5.5]> 
<h2>版本 5.5</h2> 
<![endif]––> 
<!––[if IE 6]> 
<h2>版本 6</h2> 
<![endif]––> 
<!––[if IE 7]> 
<h2>版本 7</h2> 
<![endif]––> 
<![endif]––> 


那如果當前的瀏覽器是IE,但版本比IE5還低,該怎麼辦呢,可以使用<!–[if ls IE 5]>,當然,根據條件註釋只能在IE5+的環境之下,所以<!–[if ls IE 5]>根本不會被執行。 
lte:就是Less than or equal to的簡寫,也就是小於或等於的意思。 
lt :就是Less than的簡寫,也就是小於的意思。 
gte:就是Greater than or equal to的簡寫,也就是大於或等於的意思。 
gt :就是Greater than的簡寫,也就是大於的意思。 
! : 就是不等於的意思,跟javascript裏的不等於判斷符相同 

(2) 
應該如何應用條件註釋 
本文一開始就說明了,因爲IE各版本的瀏覽器對我們製作的WEB標準的頁面解釋不一樣,具體就是對CSS的解釋不同,我們爲了兼容這些,可運用條件註釋來各自定義,最終達到兼容的目的。比如: 

複製代碼
代碼如下:

<!–- 默認先調用css.css樣式表 –-> 
<link rel="stylesheet" type="text/css" href="css.css" /> 
<!-–[if IE 7]> 
<!–- 如果IE瀏覽器版是7,調用ie7.css樣式表-–> 
<link rel="stylesheet" type="text/css" href="ie7.css" /> 
<![endif]–-> 
<!–-[if lte IE 6]> 
<!–- 如果IE瀏覽器版本小於等於6,調用ie.css樣式表 -–> 
<link rel="stylesheet" type="text/css" href="ie.css" /> 
<![endif]–> 


這其中就區分了IE7和IE6向下的瀏覽器對CSS的執行,達到兼容的目的。同時,首行默認的css.css還能與其他非IE瀏覽器實現兼容。 
注意:默認的CSS樣式應該位於HTML文檔的首行,進行條件註釋判斷的所有內容必須位於該默認樣式之後。 
比如如下代碼,在IE瀏覽器下執行顯示爲紅色,而在非IE瀏覽器下顯示爲黑色。如果把條件註釋判斷放在首行,則不能實現。該例題很能說明網頁對IE瀏覽器和非IE瀏覽器間的兼容性問題解決。 

複製代碼
代碼如下:

<style type="text/css"> 
body{ 
background-color: #000; 

</style> 
<!-–[if IE]> 
<style type="text/css"> 
body{ 
background-color: #F00; 

</style> 
<![endif]–-> 


同時,有人會試圖使用<!–-[if !IE]>來定義非IE瀏覽器下的狀況,但注意:條件註釋只有在IE瀏覽器下才能執行,這個代碼在非IE瀏覽下非單不是執行該條件下的定義,而是當做註釋視而不見。 
正常就是默認的樣式,對IE瀏覽器需要特殊處理的,才進行條件註釋。在HTML文件裏,而不能在CSS文件中使用。 
現在的DWcs4裏面,已經裝備了這些註釋:在“窗口-->代碼片段-->註釋”裏。其他的版本沒太注意到。
發佈了13 篇原創文章 · 獲贊 1 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章