我希望对我的表单中所有必填但为空的输入框应用一个特殊的样式。
当我在CSS中编写以下代码时,它确实起作用:
input[required='required'] {
bla-bla-bla;
}
但是当我写下这样的代码时,它无法工作:
input[value=''] {
bla-bla-bla;
}
我知道可以使用jQuery来实现,但是我想尝试在纯CSS中实现,如果可能的话。
这可以吗?
提前感谢,
Timofey。
我希望对我的表单中所有必填但为空的输入框应用一个特殊的样式。
当我在CSS中编写以下代码时,它确实起作用:
input[required='required'] {
bla-bla-bla;
}
但是当我写下这样的代码时,它无法工作:
input[value=''] {
bla-bla-bla;
}
我知道可以使用jQuery来实现,但是我想尝试在纯CSS中实现,如果可能的话。
这可以吗?
提前感谢,
Timofey。
如果您不必支持旧的IE版本,您可以在输入框上设置placeholder
属性为某个值(可以是空格,但必须有值),然后使用:placeholder-shown
来选择该输入框。
<input type="text" class="custom-input" placeholder=" ">
.custom-input:placeholder-shown {
/* Your rules */
}
input:invalid {
border-color: red;
}
<input type="text" required>
jQuery( 'input[type=file]' ).change( function( e ) { this.defaultValue = this.value; } );
和 CSS :not([value=""])
,但后者没有前者那么有效。 - Fanky搜索了 css样式的空输入,找到以下内容:
你需要使用JavaScript。
要使用CSS样式,您必须在HTML中键入属性:value=''
,但是CSS将匹配无论值是否在会话期间更改。
试试这个
<input type="text" value="">
input:not([value=""]) {
/* Your code */
}