无。
条件注释是 IE5.0 以上版本所特有的一种对注释的扩展,其它浏览器不支持。
对于<!--[if expression]> HTML <![endif]-->,非 IE 浏览器会当作注释内容,不显示;对于 <![if expression]> HTML <![endif]>,非 IE 浏览器浏览器会当作普通代码段显示。
IE6 IE7 IE8 |
---|
条件注释是 IE5.0 以上版本所特有的一种对注释的扩展。
条件注释有以下两种方式:
<!--[if expression]> HTML <![endif]-->
<![if expression]> HTML <![endif]>
expression 可用的常见值如下:
另外,expression 还可以是以上值的逻辑组合。
分析以下代码:
<!--[if IE 8]> <p>show if IE 8</p> <![endif]--> <!--[if !(IE 8)]> <p>show if !(IE 8)</p> <![endif]--> <![if IE 8]> <p> show if IE 8</p> <![endif]> <![if IE 6]> <p> show if IE 6</p> <![endif]>
上面代码利用了 IE 特有的条件注释,所以在 IE 中会针对条件表达式的判断,在相应的版本中显示代码段。此问题与文档模式无关。
这段代码在不同的浏览器环境中表现如下:
IE6 | IE7 | IE8 | 非IE浏览器 |
---|---|---|---|
可见:在 IE 浏览器中,在不同的版本下,按照条件显示了条件注释中包含的代码。
但是在非 IE 浏览器中不支持条件注释,所以,对于 <!--[if expression]> HTML <![endif]--> 形式的条件注释,其中的代码被当作普通的注释内容,没有显示;而对于 <![if expression]> HTML <![endif]> 形式的条件注释,其中的代码会当作普通代码段显示出来。
关于 IE 条件注释的详细资料,请参照 MSDN 的 About Conditional Comments。
在没有特殊需求的情况下,尽量避免使用 IE 特有的条件注释。
操作系统版本: | Windows 7 Ultimate build 7600 |
---|---|
浏览器版本: |
IE6
IE7 IE8 Firefox 3.6 Chrome 4.0.302.3 dev Safari 4.0.4 Opera 10.51 |
测试页面: | IE_comment.html |
本文更新时间: | 2010-07-12 |
IE Conditional Comments 条件注释