如何在不影响Internet Explorer 11中占位符字体颜色的情况下更改输入文本框的字体颜色?
如果我更改输入中的字体颜色(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中显示:
奖金Chatter
如果我没有设置输入框的样式,则输入框不会被设置样式.更改:
.buttonToolbar input { color: Blue; }
至
.buttonToolbar { color: Blue; }
意味着占位符文本现在可以执行以下操作:
但现在文字颜色没有做它应该做的事情:
我需要的是弄清楚如何使用CSS更改输入的HTML5占位符颜色.
奖金阅读
解决方法
您的占位符选择器需要更具体,如下所示.
.buttonToolbar input { color: Blue; } .buttonToolbar input:-ms-input-placeholder { /* Internet Explorer 10+ */ font-style: italic; color: GrayText; } .buttonToolbar input::-webkit-input-placeholder { /* WebKit browsers */ font-style: italic; color: GrayText; }