在CSS中,可以使用特定于供应商的伪类和伪元素的组合在输入中设置placeholder
个文本的样式(以获得最佳的跨浏览器覆盖率).
这些都共享相同的基本属性(即:文本样式和 colored颜色 声明).
然而,虽然我不可避免地希望应用相同的样式,而不考虑浏览器供应商,但似乎不可能将它们组合到一个逗号分隔的 Select 器中(就像您希望两个 Select 器共享相同样式的任何其他CSS一样).
作为示例,我倾向于使用以下四个 Select 器设置占位符样式:
input:-moz-placeholder
-
input::-moz-placeholder
个 -
input:-ms-input-placeholder
个 -
input::-webkit-input-placeholder
个
(虽然:-moz-placeholder
is being deprecated支持::-moz-placeholder
,但这只在Firefox19发布时发生,所以目前两者都需要才能更好地支持浏览器).
令人沮丧的是,声明和给出每个(相同)样式会导致CSS中大量重复.
因此,为了确保占位符文本右对齐和斜体,我将以:
input:-moz-placeholder{
font-style: italic;
text-align: right;
}
input::-moz-placeholder{
font-style: italic;
text-align: right;
}
input:-ms-input-placeholder{
font-style: italic;
text-align: right;
}
input::-webkit-input-placeholder{
font-style: italic;
text-align: right;
}
我真正想做的是将它们组合成一个逗号分隔的规则集,如下所示:
input:-moz-placeholder,
input::-moz-placeholder,
input:-ms-input-placeholder,
input::-webkit-input-placeholder{
font-style: italic;
text-align: right;
}
然而,尽管在相当多的场合try 了这一方法,但似乎从未奏效.这让我担心CSS的一些基本部分是我不理解的.
有人能解释为什么会发生这种情况吗?