使用媒体查询将CSS应用于除IE外的所有浏览器

19

我找到了一种在IE上应用媒体查询的方法:

@media (-ms-high-contrast: none), (-ms-high-contrast: active) {

}

有没有一种方法可以将CSS应用于所有浏览器,但不包括IE?类似这样:

@media not( (-ms-high-contrast: none), (-ms-high-contrast: active) ) {

}

我希望您能避免使用HTML标签。

1个回答

29

使用@supports查询来针对非Internet Explorer浏览器。 @supports查询与除Internet Explorer之外的所有浏览器兼容。

@supports not (-ms-high-contrast: none) {
   /* Non-IE styles here */
}

在Codepen上的示例


好的,现在我有点困惑了。我以为如果浏览器是Edge,那么代码就会运行CSS,因为它说“非IE”。但是我在Edge浏览器中尝试了一下,它并没有起作用。Chrome和Firefox可以正常工作。 - chitgoks
我可能误解了你的评论。你试过Codepen的例子吗?我在Windows 10上的Edge 44/EdgeHTML 18中尝试了它,这就是它的样子:https://imgur.com/a/0vYnhWm - Lars Gyrup Brink Nielsen

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