我想知道是否有办法检测IE11,并且使用IF使HTML页面使用不同的样式表。我不想一个一个地改变它,因为它不那么专业。
P.S。:我并没有想办法检测IE11(除非你以不同的方式做到这一点:))
提前致谢。
表示:
var ua = window.navigator.userAgent;
if (ua.indexOf("Trident/7.0") > 0) { //if IE11
//(set the style sheet 1)
}else{
//(set the style sheet 2)
}

<style id="s1">
<!--made for ie11-->
</style>
<style id="s2">
<!--made for google chrome-->
</style>
&#13;
答案 0 :(得分:3)
您好,您可以在css中执行以下操作:
IE 11(及以上......)
_:-ms-fullscreen, :root .ie11up { property:value; }
这将仅显示用户在IE11或更高版本时在属性中插入的css。
然后你可以将其余的css放在
中IE 9
@media screen and (min-width:0\0) and (min-resolution: .001dpcm) {
// IE9 CSS
.ie9{property:value;}
}
还有IE8, 7, 6
。
我不建议为同一页面提供多个样式表。没有必要使用上面的css在一个样式表中为它们分配不同的类,它可以正常工作。
答案 1 :(得分:1)
<强>更新强>
我真的很喜欢Josh Stevens&#39;专门针对css并且不需要任何javascript的解决方案。但是,了解IE的documentMode也是一件好事,因为有时您需要根据模式加载不同的javascript文件(尽管通常用于IE&lt; 10)。
<强>原始强> 猜猜我只是通过使用IE内置documentMode property
的简单方法来做到这一点if (document.documentMode == 11) {
// do something awesome
}
在IE8-11,Firefox和Chrome中测试过这个......似乎工作正常。
答案 2 :(得分:0)
坏消息。 IE11没有HTML条件。你必须用javascript来处理它。