前言:IE一直是特殊的一个浏览器,我们可以使用一些方法来指定样式表只在IE浏览器下被加载。
IE9以及低于IE9版本 :
可以使用条件注释语句来加载特定于ie的样式表。如下所示,使用外部css3样式表。
?1 2 3 |
<!--[if IE]>
<link rel="stylesheet" type="text/css" href="all-ie-only.css" />
<![endif]-->
|
但是如果是IE10以上时,这个办法就不是很适用了。
IE10或IE11:
使用媒体查询(-ms-high-contrast)来加载样式表。由于-ms-high-contrast是微软特有的(并且只在IE 10+中可用)css3导航菜单,所以只能在Internet Explorer 10或更高版本中解析。
?1 2 3 |
@media all and (-ms-high-contrast: none ), (-ms-high-contrast: active) {
/* IE10+ CSS styles go here */
}
|
微软 Edge12 :可以使用@supports
@supports的参考文章
?1 2 3 |
@supports (-ms-accelerator:true) {
/* IE Edge 12+ CSS styles go here */
}
|
总结
如果我们想只针对IE加载样式表,只需要设置条件注释和-ms-high-contrast媒体查询即可。