我最近发现,只要页面加载,:invalid
伪类就会应用于required
表单元素。例如,如果你有这样的代码:
<style>
input:invalid { background-color: pink; color: white; }
input:valid { background-color: white; color: black; }
</style>
…
<input name="foo" required />
然后,您的页面将加载一个空的粉红色输入元素。在HTML5中内置验证是很棒的,但我认为大多数用户在有机会输入任何值之前都不希望表单进行验证。有没有办法将伪类的应用推迟到影响该元素的第一个事件(表单提交、模糊、更改,任何适当的事件)?有没有可能在没有JavaScript的情况下做到这一点?
https://stackoverflow.com/questions/7920742
复制相似问题