上下文是,我需要使用从我不希望更改的框架(分别是jqxComboBox和jqxDropDownList来自jQWidgets)构建的select元素,并使用它们的内置占位符。
jqxComboBox为其创建了一个带有属性placeholder="my text"的内部input,因此它在浏览器依赖的占位符灰色中被正确地样式化。
但是,jqxDropDownList使用默认情况下出现在页面字体颜色中的属性unselectable="on"创建一个内部span。
我想对jqxDropDownList进行相应的样式设计,但是浏览器后面的灰色会发生变化。是否有一致的方法可以获得使用浏览器的占位符颜色,而不必为每个浏览器声明不同的规则?
这个灰色对于火狐来说很不错,但在Chrome上就不行了(这里的差别看起来很小,但我们的CSS会让它更加突出)。
body {
font-weight: bold;
}
input { /*just for the example*/
width: 100%;
}
input::placeholder { /*just for the example*/
font-weight: bold !important;
}
span[unselectable="on"] {
color: #777777 !important;
}<input style=type="textarea" placeholder="native browser placeholder color"><br>
<span unselectable="on">testing placeholder color emulation</span><br>
<span>what I have currently in my jqxDropDownList</span>
编辑:部分地解决了我的问题,为所有浏览器覆盖这篇文章是公认的答案之后的占位符颜色,但仍然对纯知识感兴趣。
发布于 2019-03-06 11:39:00
尝试使用color: unset来使用给定元素的默认颜色。
https://stackoverflow.com/questions/55022077
复制相似问题