Html 为什么这个页面在Chrome中是紫色的,而在Firefox中是蓝色的?

Html 为什么这个页面在Chrome中是紫色的,而在Firefox中是蓝色的?,html,css,google-chrome,firefox,Html,Css,Google Chrome,Firefox,我在复制问题的同时,尽可能接近真实的SSCCE: <!DOCTYPE html> <html class="colored-bg"> <head> <title>Firefox CSS Priority Test</title> <link rel="stylesheet" id="_switchSheetBackup" href="//Shared.BHStudios.org/_css/visual_Clean_Blue

我在复制问题的同时,尽可能接近真实的SSCCE:

<!DOCTYPE html>
<html class="colored-bg">
<head>
  <title>Firefox CSS Priority Test</title>
  <link rel="stylesheet" id="_switchSheetBackup" href="//Shared.BHStudios.org/_css/visual_Clean_Blue.css"/>
  <link rel="stylesheet" id="_switchSheet"       href="//Shared.BHStudios.org/_css/visual_Clean_Purple.php"/>
</head>

<body>
  This page should have a purple background, not a blue one.
  <br/>
  <a href="#" class="inverse button">This should have purple text.</a>
</body>
</html>

Firefox CSS优先级测试
此页面应具有紫色背景,而不是蓝色背景。

如您所见,第一个样式表是一个备份,以防第二个样式表不加载或加载需要一段时间(这是我实现最小JS站点主题化的方式,因此当样式更改时,用户不会看到明显的闪烁)。预期的结果是,如果所有样式表都正确加载,则页面为紫色

这在Chrome和Edge浏览器中非常有效,但在Firefox中却不行。奇怪的是,这只是背景颜色;其他类,如
反向按钮
(使白色按钮带有彩色文本)按预期工作Firefox中是否有怪癖或不受支持的功能导致此问题?最重要的是,如何解决此问题?



还有,但无法复制这种奇怪的行为。

visual_Clean_Purple.php第33行的规则打破了Firefox中的CSS。尝试删除:

*::selection,
BoltClock在以下方面提供了很好的解释:

Firefox似乎根本不理解::selection(因此 需要供应商前缀::-moz选择),因此它会忽略 根据规范,遇到无法识别的选择器的完整规则

不了解一个或多个浏览器的常见解决方法 组中的选择器用于拆分/复制规则集。

事实上,在这种情况下,这是你唯一能做的事情,也就是说,你会做的 我不得不忍受这种轻微的浮肿


您正在使用Firefox在visual_Clean_Purple.php中尚不支持的CSS选择器(
*::selection
),这将阻止对CSS选择器进行解释


我删除了该选择器,它可以正常工作:

请在任何否决票中附上一条评论,告诉我为什么我的问题不清楚、没有用处或研究不足,这样我就不会再犯同样的错误了。啊,我明白了!奇怪的是,经过这么长时间,它仍然需要前缀!