关于HTML条件注释

时间:2012-05-27 08:05:11

标签: html internet-explorer browser internet-explorer-6 conditional-comments

如果浏览器是IE 6或更低版本,或者如果浏览器大于IE 6或不是IE,我试图显示范围A

B

这在我拥有的每个Internet Explorer版本中都能很好地运行,但在Chrome和Firefox 中显示了两个。我猜他们不认识这种条件,因为它们是微软特有的。

如果没有重复使用JavaScript,有没有办法解决这个问题?

4 个答案:

答案 0 :(得分:6)

您的第一个条件评论应为:

<!--[if lte IE 6]><span>You're using IE 6 or lower.</span><![endif]-->

这是一条评论(<!-- … -->),大多数浏览器都将这样做。只有IE会将其视为注释以外的任何内容,只有IE&lt; = 6才会显示span

将其与现有产品进行比较:

<!--[if lte IE 6]><!--><span>You're using IE 6 or lower.</span><!--<![endif]-->

这是两个评论(<!--[if lte IE 6]><!--><!--<![endif]-->),它们之间有一些标记。由于只有IE知道评论有任何特殊之处,因此其他浏览器会显示内容,但不会显示两条评论。

你可以找到一个非常彻底的guide to conditional comments on Quirksmode

答案 1 :(得分:1)

  

这适用于我的每个Internet Explorer版本,但在Chrome和Firefox中都会显示两个版本。

嗯,他们愿意。

条件评论是IE功能。只要。其他浏览器将它们视为普通评论。

答案 2 :(得分:1)

这是test case

如您所见,我使用了两种类型的评论。低级显示和低级隐藏的支持非IE浏览器。有关此主题的更多信息,请阅读Microsoft's post

答案 3 :(得分:0)

摆脱第二条评论和

只保留:

<!--[if lte IE 6]> code <![endif]-->

您正在评论代码本身,但它没有显示出来。