css - 仅针对带有 CSS 的 Firefox

标签 css firefox browser-detection

使用条件注释可以很容易地使用特定于浏览器的 CSS 规则来定位 Internet Explorer:

<!--[if IE 6]>
...include IE6-specific stylesheet here...
<![endif]-->

有时是 Gecko 引擎 (Firefox) 行为不端。 什么是使用您的 CSS 规则仅针对 Firefox 而不是单个其他浏览器的最佳方法?也就是说,不仅 Internet Explorer 应该忽略 Firefox-only 规则,WebKit 和 Opera 也应该。

注意:我正在寻找“干净”的解决方案。在我看来,使用 JavaScript 浏览器嗅探器将“firefox”类添加到我的 HTML 不符合干净标准。我宁愿看到一些依赖于浏览器功能的东西,就像条件注释只是对 IE 的“特殊”......

最佳答案

此解决方案不依赖于打开的 JavaScript。

@-moz-document url-prefix() {
  h1 {
    color: red;
  }
}
<h1>This should be red in FF</h1>

它基于另一个 Mozilla 特定的 CSS 扩展。这里有这些 CSS 扩展的完整列表:

Mozilla CSS Extensions . ⚠ 请注意,它们大多已被弃用!

有关此特定 CSS 扩展的更多信息,请参阅此问题:What does @-moz-document url-prefix() do?

关于css - 仅针对带有 CSS 的 Firefox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/952861/

相关文章:

php - 为什么在我的网站上,PHP 不是在 FF 中解释,而是在 Chrome 中解释?

firefox - Firefox 有内置的 Markdown 风格吗?

jquery - 谷歌浏览器在 Windows 上插入框阴影错误,而不是在 Mac 上 : Better workaround?

antialiasing - HTML页面中的抗锯齿字体

javascript - 如何知道浏览器是否嵌入到其他应用程序中?

javascript - 将前景图像添加到图像

html - RWD - 宽度为 100% 溢出的元素

css - 展开父 CSS 网格内的内部 CSS 网格

css - 为什么 CSS 过滤器不适用于 Chrome 中的 SVG 元素?

JavaScript 版本高于 1.5 - 为什么?