IE 10+不支持条件语句。这使得为IE7-11进行开发变得棘手,因为IE10-11解析条件语句中的内容,而不是忽略它。例如:
<!--[if (IE 9) | (IE 8)]><!-->
// Code here will get rendered by IE10 & IE11
<!--<![endif]-->所以,如果我想要一些只在IE8和9中渲染的代码,然后一些只在IE10,IE11和火狐中渲染的代码,我该怎么做呢?
编辑:请注意,我在这里不是在谈论样式;我想要支持我的网页中的重大结构变化。例如:
<!--[if (IE 9) | (IE 8)]><!-->
<div>
<div>
Test
</div>
</div>
<!--<![endif]-->
<!--[if (IE 10]><!-->
<div>
<h3>Test</h3>
</div>
<!--<![endif]-->发布于 2014-06-10 21:12:49
我让这件事在我这方面起作用。看起来条件语句的格式是off。
<!--[if (IE 9) | (IE 8)]>
Code here will not get rendered by IE10 & IE11
<![endif]-->另外,你呈现的是哪种类型的代码,js,css?
发布于 2014-06-11 11:08:02
如果您只希望IE8/9呈现与其他所有浏览器不同的一组标记(这意味着IE10+接收与所有其他浏览器相同的代码),这是完全可行的:
(IE 9) | (IE 8)条件。这意味着让注释部分封装整个代码块,而不仅仅是条件expressions.(IE 10)部分很好;IE8和IE9将知道它们不满足条件,因此即使标记没有被注释掉,也不会呈现它,而IE10无论如何都看不到条件(以后的任何版本也是如此),所以它将呈现标记,因为它没有隐藏在注释中。
因此:
<!--[if (IE 9) | (IE 8)]>
<div>
<div>
Test
</div>
</div>
<![endif]-->
<!--[if (IE 10)]><!-->
<div>
<h3>Test</h3>
</div>
<!--<![endif]-->https://stackoverflow.com/questions/24141485
复制相似问题