使用:required伪类可为必填表单控件添加视觉高亮,如红色边框和浅红背景;结合:has()在label旁加红色星号;用:invalid:not(:placeholder-shown)强化提交失败反馈;需兼顾可访问性与服务端校验。

直接用 :required 伪类配合 CSS 设置样式,就能为必填表单控件添加视觉高亮,无需 JavaScript。
最常用的方式是给必填项加红色边框或浅红背景,让用户一眼识别:
input:required,
select:required,
textarea:required {
border-color: #e74c3c;
background-color: #fff8f8;
}注意::required 只匹配带有 required 属性的元素(如 <input required>),不依赖 type 或 name,语义清晰可靠。
在标签(label)旁动态插入红色星号,更符合表单设计规范:
立即学习“前端免费学习笔记(深入)”;
label:has(+ input:required),
label:has(+ select:required) {
position: relative;
}
label:has(+ input:required)::after,
label:has(+ select:required)::after {
content: " *";
color: #e74c3c;
font-weight: bold;
}⚠️ 注意::has() 是较新特性(Chrome 105+、Firefox 121+、Safari 15.4+ 支持),旧浏览器需降级处理(如手动加 class="required" 配合 CSS)。
仅靠 :required 不够——用户没填就点提交,浏览器会自动聚焦并弹原生提示。可进一步用 :invalid:not(:placeholder-shown) 精准捕获已失焦且为空的必填项:
input:required:invalid:not(:placeholder-shown),
select:required:invalid:not(:placeholder-shown),
textarea:required:invalid:not(:placeholder-shown) {
outline: 2px solid #c0392b;
box-shadow: 0 0 6px rgba(192, 57, 43, 0.3);
}这个组合选择器能避免 placeholder 还在时误触发样式,体验更细腻。
:required 兼容所有现代浏览器,包括 IE10+,放心使用required 属性以上就是css表单必填项怎么高亮提示_通过required伪类标记的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号