我在一个拥有大量颜色样式的网站上工作,大约有 250 行 CSS 来定义 7 种配色方案中的一种,因此尽可能将各种颜色规则分组很重要。
当我尝试堆叠与已弃用的 CSS3 ::selection
伪元素相关的选择器时,Firefox 4 的最新 RC 表现不佳。
这个有效:
.green ::-moz-selection {
/* 'Pure Hue' Color */
background-color: #62BA21;
color: white;
}
但是一旦我尝试与 webkit 选择器共享规则,它就会崩溃。
不适用于 FireFox:
.green ::selection, .green ::-moz-selection {
/* 'Pure Hue' Color */
background-color: #62BA21;
color: white;
}
我知道他们可能不会解决这个错误,因为 ::selection
不再出现在工作草案中,但我更愿意,如果我不必再膨胀我的 CSS它已经是这个怪癖了。
最佳答案
Firefox 似乎根本不理解 ::selection
(因此需要以供应商为前缀的 ::-moz-selection
),所以它忽略了遇到无法识别的选择器 per the spec .
浏览器不理解一组中的一个或多个选择器的常见解决方法是拆分/复制规则集:
/* Firefox sees this */
.green ::-moz-selection {
background-color: #62BA21;
color: white;
}
/* Other browsers see this */
.green ::selection {
background-color: #62BA21;
color: white;
}
事实上,在这种情况下,这是您唯一可以做的事情,即您将不得不忍受这种轻微的膨胀。
关于html - Firefox::-moz-selection 选择器错误(?)有解决方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5302172/