作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
如何在 Internet Explorer 11 中更改 input
text 框的字体颜色而不影响 placeholder
字体颜色?
如果我更改输入中字体的颜色(Fiddle):
HTML:
<div class="buttonToolbar">
<input type="text" placeholder="e.g. Stackoverflow"><br>
</div>
CSS:
.buttonToolbar input {
color: Blue;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
font-style: italic;
color: GrayText;
}
::-webkit-input-placeholder { /* WebKit browsers */
font-style: italic;
color: GrayText;
}
占位符文本不再是 Internet Explorer 11 中的默认灰色:
但它在 Chrome 35 中确实显示如我所愿:
如果我不为 input
框设置样式,那么输入框就不会设置样式。改变:
.buttonToolbar input {
color: Blue;
}
到
.buttonToolbar {
color: Blue;
}
意味着占位符文本现在执行它应该执行的操作:
但是现在文本颜色不符合预期:
我需要弄清楚如何使用 CSS 更改输入的 HTML5 占位符颜色。
最佳答案
我对此有点陌生,这个答案可能只是一个快速解决方案......但是如果你在 GrayText 之后添加 !important 那么它似乎可以工作(至少在 IE 10 中)。
color: GrayText !important;
这是 fiddle http://jsfiddle.net/uc2Rj/
如果您不想使用 !important,这至少可以让您朝着解决问题的正确方向迈进。可能是关于伪元素和类在它们之上的优先级。( Why can't I override existing pseudo-elements? )
关于css - 如何在 IE11 中设置输入文本颜色,而不是占位符颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24539672/
我是一名优秀的程序员,十分优秀!