IE瀏覽器判斷,判斷IE版本的HTML語(yǔ)句詳解,如:[if lte IE 9]……[endif]
我們常常會(huì)在網(wǎng)頁(yè)的HTML里面看到形如[if lte IE 9]……[endif]的代碼,表示的是限定某些瀏覽器版本才能執(zhí)行的語(yǔ)句,那么這些判斷語(yǔ)句的規(guī)則是什么呢?請(qǐng)看下文:
<!--[if !IE]><!--> 除IE外都可識(shí)別 <!--<![endif]-->
<!--[if IE]> 所有的IE可識(shí)別 <![endif]-->
<!--[if IE 6]> 僅IE6可識(shí)別 <![endif]-->
<!--[if lt IE 6]> IE6以及IE6以下版本可識(shí)別 <![endif]-->
<!--[if gte IE 6]> IE6以及IE6以上版本可識(shí)別 <![endif]-->
<!--[if IE 7]> 僅IE7可識(shí)別 <![endif]-->
<!--[if lt IE 7]> IE7以及IE7以下版本可識(shí)別 <![endif]-->
<!--[if gte IE 7]> IE7以及IE7以上版本可識(shí)別 <![endif]-->
<!--[if IE 8]> 僅IE8可識(shí)別 <![endif]-->
<!--[if IE 9]> 僅IE9可識(shí)別 <![endif]-->
| 項(xiàng)目 | 范例 | 說(shuō)明 |
|---|---|---|
| ! | [if !IE] | The NOT operator. This is placed immediately in front of the NOT運(yùn)算符。這是擺立即在前面的功能,操作員,或子表達(dá)式扭轉(zhuǎn)布爾表達(dá)式的意義。 |
| lt | [if lt IE 5.5] | The less-than operator. Returns true if the first argument is less than the second argument. 小于運(yùn)算符。如果第一個(gè)參數(shù)小于第二個(gè)參數(shù),則返回true。 |
| lte | [if lte IE 6] | The less-than or equal operator. Returns true if the first argument is less than or equal to the second argument. 小于或等于運(yùn)算。如果第一個(gè)參數(shù)是小于或等于第二個(gè)參數(shù),則返回true。 |
| gt | [if gt IE 5] | The greater-than operator. Returns true if the first argument is greater than the second argument. 大于運(yùn)算符。如果第一個(gè)參數(shù)大于第二個(gè)參數(shù),則返回true。 |
| gte | [if gte IE 7] | The greater-than or equal operator. Returns true if the first argument is greater than or equal to the second argument. 大于或等于運(yùn)算。如果第一個(gè)參數(shù)是大于或等于第二個(gè)參數(shù),則返回true。 |
| ( ) | [if !(IE 7)] | Subexpression operators. Used in conjunction with boolean operators to create more complex expressions. 子表達(dá)式運(yùn)營(yíng)商。在與布爾運(yùn)算符用于創(chuàng)建更復(fù)雜的表達(dá)式。 |
| & | [if (gt IE 5)&(lt IE 7)] | The AND operator. Returns true if all subexpressions evaluate to true AND運(yùn)算符。如果所有的子表達(dá)式計(jì)算結(jié)果為true,返回true |
| | | [if (IE 6)|(IE 7)] | The OR operator. Returns true if any of the subexpressions evaluates to true. OR運(yùn)算符。返回true,如果子表達(dá)式計(jì)算結(jié)果為true。 |
<!--[if lt IE 9]>
加載CSS1
<!--[else]>
加載CSS2
<![endif]-->這樣有效是有效,但是用HTML VALIDATOR里,報(bào)錯(cuò),因?yàn)檫@個(gè)不符合XHTML 1.1的規(guī)范,
如果把ELSE語(yǔ)句去掉,則正確.
方法1:
加載CSS2
<!--[if lt IE 9]>
加載CSS1(可以把要重寫(xiě)的寫(xiě)在這里).
<![endif]-->
<!--[if lte IE 6]>
<![endif]-->
IE6及其以下版本可見(jiàn)
<!--[if lte IE 7]>
<![endif]-->
IE7及其以下版本可見(jiàn)
<!--[if IE 6]>
<![endif]-->
只有IE6版本可見(jiàn)
<![if !IE]>
<![endif]>
除了IE以外的版本
<!--[if lt IE 8]>
<![endif]-->
IE8及其以下的版本可見(jiàn)
<!--[if gte IE 7]>
<![endif]-->
IE7及其以下的版本可見(jiàn)
用法:
(1)可使用如下代碼檢測(cè)當(dāng)前IE瀏覽器的版本(注意:在非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]––>那如果當(dāng)前的瀏覽器是IE,但版本比IE5還低,該怎么辦呢,可以使用<!–[if ls IE 5]>,當(dāng)然,根據(jù)條件注釋只能在IE5+的環(huán)境之下,所以<!–[if ls IE 5]>根本不會(huì)被執(zhí)行。 lte:就是Less than or equal to的簡(jiǎn)寫(xiě),也就是小于或等于的意思。 lt :就是Less than的簡(jiǎn)寫(xiě),也就是小于的意思。 gte:就是Greater than or equal to的簡(jiǎn)寫(xiě),也就是大于或等于的意思。 gt :就是Greater than的簡(jiǎn)寫(xiě),也就是大于的意思。 ! : 就是不等于的意思,跟javascript里的不等于判斷符相同
版權(quán)所屬:SO JSON在線解析
原文地址:http://suancuo.cn/blog/162.html
轉(zhuǎn)載時(shí)必須以鏈接形式注明原始出處及本聲明。
如果本文對(duì)你有幫助,那么請(qǐng)你贊助我,讓我更有激情的寫(xiě)下去,幫助更多的人。
