详谈IE条件注释

  发布时间:2014-12-08 09:00:30   作者:佚名   我要评论
条件注释是IE特有的一种功能,能对IE系列产品进行单独的XHTML代码处理,注意,主要是针对XHTML,而非CSS。本文我们就来探讨下关于IE条件注释的相关问题。
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

概述

如果你厌烦了为低版本IE写又臭又长的hack,IE条件注释将是比较优美的解决方法。当然条件注释的功能不仅仅是以上那些功能,除了规避写出恶心的hack,它还可以针对不同的IE版本(IE5.5-9,IE10不支持条件注释)做出不同的相应,比如针对不同IE加载不同的样式,或者脚本等等,更多的功能等待我们的发掘和运用。

条件注释简介

IE中的条件注释(Conditional comments)对IE的版本和IE非IE有优秀的区分能力,是WEB设计中常用的hack方法。
条件注释只能用于IE5以上,IE10以上不支持。
如果你安装了多个IE,条件注释将会以最高版本的IE为标准。
条件注释的基本结构和HTML的注释(<!– –>)是一样的。因此IE以外的浏览器将会把它们看作是普通的注释而完全忽略它们。
IE将会根据if条件来判断是否如解析普通的页面内容一样解析条件注释里的内容。

条件注释语法

项目 范例 说明
! [if !IE] The NOT operator. This is placed immediately in front of the featureoperator, or subexpression to reverse the Boolean meaning of the expression.
NOT运算符。这是摆立即在前面的功能操作员,或子表达式扭转布尔表达式的意义。
lt [if lt IE 5.5] The less-than operator. Returns true if the first argument is less than the second argument.
小于运算符。如果第一个参数小于第二个参数,则返回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.
小于或等于运算。如果第一个参数是小于或等于第二个参数,则返回true。
gt [if gt IE 5] The greater-than operator. Returns true if the first argument is greater than the second argument.
大于运算符。如果第一个参数大于第二个参数,则返回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.
大于或等于运算。如果第一个参数是大于或等于第二个参数,则返回true。
( ) [if !(IE 7)] Subexpression operators. Used in conjunction with boolean operators to create more complex expressions.
子表达式运营商。在与布尔运算符用于创建更复杂的表达式。
& [if (gt IE 5)&(lt IE 7)] The AND operator. Returns true if all subexpressions evaluate to true
AND运算符。如果所有的子表达式计算结果为true,返回true
| [if (IE 6)|(IE 7)] The OR operator. Returns true if any of the subexpressions evaluates to true.
OR运算符。返回true,如果子表达式计算结果为true。

条件注释使用方法示例

<!–[if IE 5]>仅IE5.5可见<![endif]–>
<!–[if gt IE 5.5]>仅IE 5.5以上可见<![endif]–>
<!–[if lt IE 5.5]>仅IE 5.5以下可见<![endif]–>
<!–[if gte IE 5.5]>IE 5.5及以上可见<![endif]–>
<!–[if lte IE 5.5]>IE 5.5及以下可见<![endif]–>
<!–[if !IE 5.5]>非IE 5.5的IE可见<![endif]–>

条件注释使用案例

特别提示:

1、有人会试图使用<!--[if !IE]>来定义非IE浏览器下的状况,但注意:条件注释只有在IE浏览器下才能执行,这个代码在非IE浏览下被当做注释视而不见。

2、我们通常用IE条件注释根据浏览器不同载入不同css,从而解决样式兼容性问题的。其实它可以做的更多。它可以保护任何代码块——HTML代码块、JavaScript代码块、服务器端代码……看看下面的代码。


复制代码
代码如下:

<!--[if IE]>
<script type="text/javascript">
alert("你使用的是IE浏览器!");
</script>
<![endif]-->

相关文章

  • 面向XHTML的IE条件注释

    条件注释是IE特有的一种功能,能对IE系列产品进行单独的XHTML代码处理,注意,主要是针对XHTML,而非CSS。 条件注释功能非常强大,可以进行true和false判断,例如:
    2008-10-17
  • IE的有条件注释优点和缺点

    IE的有条件注释是一种专有的(因此是非标准的)、对常规(X)HTML注释的Miscrosoft扩展。 IE的有条件注释是一种专有的(因此是非标准的)、对常规(X)HTM
    2009-04-02
  • css 条件注释区分非IE浏览器

    IE浏览器的条件注释虽不太常用,却异常强大,不仅可以用来区分IE浏览器版本
    2010-03-05
  • 针对主流浏览器的CSS-HACK写法及IE常用条件注释

    本文将为你总结CSS针对各浏览器的兼容HACK(以IE6/IE7/IE8 /FF为主),以及IE特有的条件注释使用方法.
    2010-07-04
  • ie10 css hack 条件注释等兼容方式整理

    ie10已经上线一段时间了,相信已经有一部分前端潮人体验过了,截至到现在,在ie6到ie9的浏览器各种各样的古怪行为,开发人员不得不使用条件注释,有条件的类,和其他特定于I
    2012-12-11
  • 浏览器兼容之旅第一站:如何在页面中创建IE条件注释

    浏览器的兼容问题一定处理过不少了,特别是IE6的兼容问题;这一节主要了解了如何在页面中创建IE条件注释,以及其带来的好处,和所起的作用,需要了解的朋友可以参考下
    2012-12-27
  • 条件注释判断浏览器(ie系列)

    使用条件注释判断浏览器在某些时候还是比较使用的,比如css 样式的兼容根据浏览器不同进行判断加载,类似的例子还有好多,感兴趣的朋友可以参考下,希望对大家有所帮助
    2013-07-26
  • 使用条件注释判断 IE 浏览器版本适用于IE5.0及以上版本

    IE条件注释是一种特殊的HTML注释,这种注释只有IE5.0及以上版本才能理解,下面为大家介绍下使用条件注释判断 IE 浏览器版本,感兴趣的朋友可以参考下
    2014-03-31

最新评论

?


http://www.vxiaotou.com