如何只在IE上加载CSS样式表

前言: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媒体查询即可。

上一篇:(已解决)为啥输入的内容,在文本框失去焦点后,消失?


下一篇:Ionic4.x Theming(主题) 增加内置主题 颜色 修改内置组件默认样式 修改底部 Tabs 背景颜色以及按钮颜色