如何在焦点上更改占位符颜色?

Dav*_*ide 55 html css focus colors placeholder

如何在聚焦输入字段时更改占位符的颜色?我用这个css来设置默认颜色,但是如何在焦点上更改它?

::-webkit-input-placeholder { color: #999; }

/* Firefox < 19 */
:-moz-placeholder { color: #999; }

/* Firefox > 19 */
::-moz-placeholder { color: #999; }

/* Internet Explorer 10 */
:-ms-input-placeholder { color: #999; }
Run Code Online (Sandbox Code Playgroud)

Pra*_*v 웃 107

试试这个,这应该工作:

input::-webkit-input-placeholder {
    color: #999;
}
input:focus::-webkit-input-placeholder {
    color: red;
}

/* Firefox < 19 */
input:-moz-placeholder {
    color: #999;
}
input:focus:-moz-placeholder {
    color: red;
}

/* Firefox > 19 */
input::-moz-placeholder {
    color: #999;
}
input:focus::-moz-placeholder {
    color: red;
}

/* Internet Explorer 10 */
input:-ms-input-placeholder {
    color: #999;
}
input:focus:-ms-input-placeholder {
    color: red;
}
Run Code Online (Sandbox Code Playgroud)

这是一个例子:http://jsfiddle.net/XDutj/27/


Dav*_*ide 5

除了Pranav的答案,我还使用textarea兼容性改进了代码:

::-webkit-input-placeholder { color: #999; }
:-moz-placeholder { color: #999; }

:focus::-webkit-input-placeholder { color: #ccc; }
:focus:-moz-placeholder { color: #ccc; }?
Run Code Online (Sandbox Code Playgroud)


Dav*_*gas 5

这对我有用:

input:focus::placeholder {
  color: blue;
}
Run Code Online (Sandbox Code Playgroud)

  • 这应该更改为标记的答案。 (2认同)