CSS的input:invalid {}
样式在表单元素无效时很有用,但直接使用用户体验很差。例如,表单加载时立即显示无效样式,这会让用户感到困惑。因此,这种用法在实际应用中很少见。然而,如果能避免这个问题,:invalid
选择器就能在表单验证中发挥巨大作用,而无需依赖大型库。
Dave提出了一种改进方案,基于2017年的原始想法:
<code>form.errors :invalid { outline: 2px solid red; }</code>
只有在确定表单处于错误状态并添加了errors
类后,才会应用原生错误样式。测试也很容易。例如,可以在提交按钮点击时应用该类:
<code>submitButton.addEventListener("click", (e) => { form.classList.toggle("errors", !form.checkValidity()) });</code>
也可以在输入框失去焦点时或其他时机应用。甚至可以将每个输入框用包装器包裹,并在适当的时候切换包装器的类。
Dave将此想法应用于Vue:
我们初始化表单组件时将
errors
设置为false
,因为我们不希望在用户提交表单之前显示错误样式。invalidateForm
函数只是将this.error
设置为true
。这是CSS :invalid
伪类的缺点之一,它过于急切。通过监听invalid
事件,可以延迟样式的应用,直到第一次表单提交尝试之后,我们知道表单存在错误。
这种方法无需额外引入库,充分利用了HTML表单验证的原生功能。以下链接是一个改进的版本,也显示了错误消息:
直接链接 →
以上是更快乐的HTML5表格验证的详细内容。更多信息请关注PHP中文网其他相关文章!

CSSCOUNTERSAREDOMANAGEAUTOMANAMBERINGINWEBDESIGNS.1)他们可以使用forterablesofcontents,ListItems,and customnumbering.2)AdvancedsincludenestednumberingSystems.3)挑战挑战InclassINCludeBrowsEccerCerceribaliblesibility andperformiballibility andperformissises.4)创造性

使用滚动阴影,尤其是对于移动设备,是克里斯以前涵盖的一个微妙的UX。杰夫(Geoff)涵盖了一种使用动画限制属性的新方法。这是另一种方式。

文章讨论了CSS FlexBox,这是一种布局方法,用于有效地对齐和分布响应设计中的空间。它说明了FlexBox用法,将其与CSS网格进行了比较,并详细浏览了浏览器支持。

本文讨论了使用CSS创建响应网站的技术,包括视口元标签,灵活的网格,流体媒体,媒体查询和相对单元。它还涵盖了使用CSS网格和Flexbox一起使用,并推荐CSS框架

本文讨论了CSS盒装属性,该属性控制了元素维度的计算方式。它解释了诸如Content-Box,Border-Box和Padding-Box之类的值,以及它们对布局设计和形式对齐的影响。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

SublimeText3 Linux新版
SublimeText3 Linux最新版

Dreamweaver Mac版
视觉化网页开发工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。