使用::placeholder伪元素可设置输入框占位符颜色,推荐同时添加-webkit-、-moz-、-ms-前缀以兼容各浏览器,需设置opacity:1防止颜色变淡。

在CSS中设置placeholder的颜色,可以通过伪元素或伪类来实现,不同浏览器的写法略有差异。
使用 ::placeholder 伪元素
现代浏览器推荐使用 ::placeholder 伪元素,它可以统一设置输入框占位符的样式。示例:
input::placeholder {
color: #999;
opacity: 1; /* 部分浏览器需要设置opacity避免颜色变淡 */
}兼容不同浏览器的写法
由于历史原因,一些浏览器使用了带前缀的私有属性,为了确保兼容性,建议加上各主流浏览器的前缀。完整写法示例:
input::-webkit-input-placeholder { /* Chrome, Safari, Edge等 */
color: #999;
}
<p>input::-moz-placeholder { /<em> Firefox 19+ </em>/
color: #999;
}</p><p>input:-ms-input-placeholder { /<em> IE 10+ </em>/
color: #999;
}</p><p>input::placeholder { /<em> 标准语法 </em>/
color: #999;
opacity: 1;
}注意事项
部分浏览器(如Firefox)默认会降低placeholder的透明度,即使设置了颜色也可能看起来偏浅。可以通过设置 opacity: 1 来解决。如果想让placeholder文字更小或改变字体样式,也可以在上述规则中添加 font-size、font-style 等属性。
立即学习“前端免费学习笔记(深入)”;
基本上就这些,不复杂但容易忽略兼容性和透明度问题。










