首页 > 代码库 > IE浏览器条件注释if IE详解

IE浏览器条件注释if IE详解

无论是google还是百度搜到的if IE条件注释用法,排在前面的几个搜索结果文章都是有错误和漏洞的,而这些漏洞和错误导致我一度误以为有些IE条件注释已经失效了,即使不是失效,也令我 很费解。今天抽时间查阅了些老外写的东西,并且都试验了一遍。发现给我造成费解的原因是那些文章大多都是抄来的,没有经过亲自试验,在复制来复制去的过程 中就把某些关键的地方弄错了:( 现将正确的if IE条件注释用法总结一下,以便以后使用:

运算符示例说明
![if !IE]非运算符。该例子表示所有的非IE浏览器(注:如果是判断带版本号的非,需要加子表达式,即括号,如:[if !(IE 7)] 表示非IE7)
lt[if lt IE 7]小于运算符,如果第一个参数小于第二个参数,则返回true。该例子表示小于IE7(不等于IE7)
lte[if lte IE 7]小于或等于运算符,如果第一个参数是小于或等于第二个参数,则返回true。该例子表示小于或等于IE7
gt[if gt IE 7]大于运算符,如果第一个参数大于第二个参数,则返回true。该例子表示大于IE7(不等于IE7)
gte[if gte IE 7]大于或等于运算符。如果第一个参数大于或等于第二个参数,则返回true。该例子表示大于或等于IE7
( )[if !(IE 7)]子表达式运算符。该例子表示小于IE8(不包括IE8)
&[if (gt IE 6)&(lt IE 8)]与运算符,如果所有的子表达式计算结果为true,返回true。该例子表示大于IE6并且小于IE8,跟[if IE 7]结果是一样的
|[if (IE 6)|(IE 7)]或运算符,如果所有的子表达式计算结果中有一个为true,返回true。该例子表示如果是IE6或者IE7

常用例子:

<!--[if IE]> 仅IE浏览器可识别 <![endif]--><!--[if IE 6]> 仅IE6可识别 <![endif]--><!--[if lt IE 7]> IE7以下(不包括IE7)可识别 <![endif]--><!--[if lte IE 7]> IE7及IE以下可识别 <![endif]--><!--[if gte IE 7]> IE7及IE以上可识别 <![endif]--><!--[if !IE]><!--> 非IE浏览器可识别 <!--<![endif]--><!--[if !(IE 7)]><!--> 非IE7可识别 <!--<![endif]-->

注意:

  • 1、”IE”与版本号之间是有一个空格的,即”IE7″这样的写法是错误的;
  • 2、非运算符的写法和其他的不太一样,请认真看清楚。