0

我有这个工作正常的标记:

<div id="hd1" class="header headerNotIE6">

我现在正在尝试放置一个特定于 ie6 的解决方法,所以如果浏览器不是 IE 6,我试图只使用这个 div。所以如果它的 IE7、8 和 firefox 和 chrome,我希望这条线能够命中。我试过这个,但它似乎在 Firefox 或 Chrome 中不起作用。

<!--[if !(IE 6)]>
    <div id="hd1" class="header headerNotIE6">
<![endif]-->

是否有任何“如果除 IE6 之外的所有内容”条件注释适用于 html 文件?

4

2 回答 2

3

要定位除 IE6 之外的任何 IE,请使用!运算符:

<!--[if !IE 6]>
    <div id="hd1" class="header headerNotIE6">
<![endif]-->

要针对除 IE6 之外的任何 IE以及所有其他浏览器,您需要特殊的语法来打破条件注释,以便其他浏览器可以读取和解析其中的 HTML,而不是将整个块视为一个注释:

<!--[if !IE 6]><!-->
    <div id="hd1" class="header headerNotIE6">
<!--<![endif]-->

voyager 的答案中显示的原始语法(称为下层​​显示语法)缺少额外的注释分隔符。但是,它是无效的 HTML,因此为了保持文档的有效性,您应该改用上述语法。

于 2010-12-12T17:52:50.347 回答
0

必须使用的是

<![if !IE 6]>
  <div id="hd1" class="header headerNotIE6">
<![endif]>

IE 以外的浏览器将<!--[if !IE 6]><div id="hd1" class="header headerNotIE6"><![endif]-->其视为普通评论,因此它们永远无法看到div内部。

于 2010-12-12T18:12:18.387 回答