在HTML/CSS中检测IE11而无需JavaScript

9

我一直在使用以下技巧来生成特定于浏览器的HTML:

<!--[if (IE)]>  <div class= "ie"> <![endif]-->
<!--[if !(IE)]><!--> <div class= "not_ie"> <!--<![endif]-->
</div>

这在IE11上不起作用。有没有新的技巧可以使用?

我可以使用JavaScript检测它:

使用CSS能力/特性检测检测IE11

或者

Object.hasOwnProperty.call(window, "ActiveXObject") && !window.ActiveXObject)

但我希望避免那种情况。


5
我正在使用字体Gabriola,在IE浏览器中显示不同(它在元素中没有垂直居中)。因此,我添加了一些额外的边距。我并不认为使用这种字体是不良代码,但当然你有你自己的看法。 - user984003
@NielsKeurentjes,除非您正在编写IE弃用文本并且只想向IE用户显示它(我的情况),否则我们将不支持IE(所有版本)并需要向这些可怜的人显示警告消息。 - Spock
@Spock 但是对于这个目标,基于JS UA的检测完全可以胜任。我5年前的评论适用于IE11特定的渲染异常。 - Niels Keurentjes
1个回答

13

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接