最佳答案
我最近发现,一旦页面加载,:invalid
伪类就应用于 required
表单元素。例如,如果您有以下代码:
<style>
input:invalid { background-color: pink; color: white; }
input:valid { background-color: white; color: black; }
</style>
…
<input name="foo" required />
然后页面将加载一个空的粉红色输入元素。在 HTML5中内置验证非常好,但是我不认为大多数用户希望在他们有机会输入任何值之前验证表单。有没有什么方法可以将伪类的应用推迟到第一个影响该元素的事件(表单提交、模糊、更改等等) ?没有 JavaScript 可以做到这一点吗?