【发布时间】:2014-11-24 00:26:09
【问题描述】:
尝试将样式应用于占位符我遇到了一个问题,即在 IE(所有版本)中占位符文本颜色不适用。只取文本输入的颜色
:-ms-input-placeholder {
color: white;
}
input {
color:black;
}
应用此代码后,占位符的颜色将为黑色。
可能是什么问题?
【问题讨论】:
标签: css internet-explorer
尝试将样式应用于占位符我遇到了一个问题,即在 IE(所有版本)中占位符文本颜色不适用。只取文本输入的颜色
:-ms-input-placeholder {
color: white;
}
input {
color:black;
}
应用此代码后,占位符的颜色将为黑色。
可能是什么问题?
【问题讨论】:
标签: css internet-explorer
您需要为特定输入指定此规则:
input:-ms-input-placeholder {
color: white;
}
input {
color:black;
}
来自Internet Explorer Dev Center:
选择器:-ms-input-placeholder {...}
请注意,这仅适用于 IE>10 浏览器。
【讨论】:
如果您正在寻找对所有浏览器的支持,请查看以下答案:
【讨论】:
解决方案:
在我的 css 中,我为表单输入 (div_name form > input {}) 指定了文本的颜色,这对于浏览器来说是比指定为选择器更有价值的参数:-ms-input-placeholder {} 占位符颜色。 (这很奇怪。它们用于不同的目的,但没关系)
【讨论】:
IE11 需要 !important 标志来覆盖默认的用户代理样式。
这是适用于 IE 版本 10 和 11 的规则集。
/* - Internet Explorer 10–11
- Internet Explorer Mobile 10-11 */
:-ms-input-placeholder {
color: white !important;
}
有关所有浏览器的详细信息,请参阅问题Placeholder CSS not being applied in IE 11 的答案。
对于早于 10 的 IE 版本,您需要一个 polyfill 来支持占位符。这些 CSS 会有所不同。参考 polyfill。
【讨论】: