css删除选择/突出显示文本上的文字阴影(mozilla)

时间:2012-10-23 09:34:13

标签: css css-selectors selection css3

我在大多数文本网站范围内使用文本阴影,但是当您突出显示/选择文本时 - 文本看起来很模糊。因此,为了删除文本阴影,我使用here中的这个css。

::-moz-selection,
::-webkit-selection,
::selection {
    text-shadow: none;
    background: #333;
    color: #fff;
}

问题是由于某些原因moz-selection似乎在mozilla(Firefox)中不再起作用了。

这是jsFiddle

2 个答案:

答案 0 :(得分:26)

似乎问题是由于将多个css规则(针对供应商特定的css)与:: selection伪元素组合在一起。

我原本以为将每个语句写在一个单独的行上就足够了。

我错了。

所以如果我替换这段代码:

::-moz-selection,
::selection {
    text-shadow: none;
    background: #333;
    color: #fff;
}

..使用此代码:

::-moz-selection
{
    text-shadow: none;
    background: #333;
    color: #fff;
}
::selection {
    text-shadow: none;
    background: #333;
    color: #fff;
}

....宾果,它有效。

<强> FIDDLE

支持也非常好(适用于桌面):Caniuse

另外,如果您使用LESS或SASS - 您可以轻松编写mixin来绕过重复。

答案 1 :(得分:6)

以下is documented on Mozilla Developer Network

  

虽然这个伪元素在CSS选择器级别3的草稿中,但它在候选推荐阶段被删除了,因为它的行为似乎不明确,特别是对于嵌套元素,并且没有实现互操作性(基于在W3C Style邮件列表中讨论。)

     

:: selection伪元素当前不在标准轨道上的任何CSS模块中。它不应该在生产环境中使用。