效果图
原理
表单元素中,有一个pattern属性,可以自定义正则表达式(如手机号、邮箱、身份证..);valid伪类,可以匹配通过pattern验证的元素;invalid伪类则相反,可以匹配未通过pattern验证的元素;于是就可以随便搞啦,上面的效果图只是做一些简单的效果,更多效果以及限制大家就发挥自己的想象力咯;
html
布局很简单,input跟button是兄弟节点的关系,required属性是必填的意思,也就是输入的内容必须要验证通过;
<section class="container"> <input type="text" name="tel" placeholder="请输入手机号码" pattern="^1[3456789]\d{9}$" required><br> <input type="text" name="tel" placeholder="请输入验证码" pattern="\d{4}" required><br> <button type="submit"></button>
css
这里用的是scss预处理器
input { // 验证通过时按钮的样式 &:valid { &~button { pointer-events: all; cursor: pointer; &::after { content: "提交:+1:" } } } // 验证不通过时按钮的样式 &:invalid { &~button { pointer-events: none; // 去除点击事件,让按钮无法点击 &::after { content: "未通过验证:unamused:" } } } }
总结
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理