:enabled 选中未设置 disabled 属性的表单元素,如 input、textarea、button、select;可用于设置可交互控件的样式,常与 :disabled 配合使用,通过背景色、边框等视觉反馈提升表单可读性和用户体验。

CSS 伪类 :enabled 用于选择处于“可用”状态的表单元素,即用户可以与之交互的元素。它常用于给可点击或可输入的控件设置特定样式,提升界面的可读性和用户体验。
哪些元素会被 :enabled 选中?
大多数表单控件都支持启用和禁用状态。当元素没有设置 disabled 属性时,就会被视为“启用”,并被 :enabled 匹配。
- input 文本框、密码框、单选框、复选框等
- textarea 多行文本输入框
- button 按钮(包括提交按钮)
- select 下拉选择框
例如,以下 input 元素会被 :enabled 选中:
input[type="text"]:enabled { background-color: #f0f8ff; }如何使用 :enabled 设置样式?
你可以将 :enabled 与其他选择器结合,只为可操作的元素添加视觉反馈。常见用途包括背景色、边框或光标样式的变化。
立即学习“前端免费学习笔记(深入)”;
- 为可输入的文本框添加浅色背景
- 让可用按钮显示高亮边框
- 鼠标悬停时增强交互感
示例代码:
input:enabled {border: 1px solid #4caf50;
background-color: #fff;
}
button:enabled:hover {
background-color: #e8f5e9;
}
对比 :disabled 更清晰地区分状态
通常,:enabled 和 :disabled 配合使用,能更明确地表达控件状态。浏览器默认会将 disabled 元素置灰,但自定义样式可以统一设计语言。
比如:
input:enabled { color: #333; }input:disabled { color: #aaa; opacity: 0.6; }
这样用户一眼就能看出哪些可以操作,哪些不能。
基本上就这些。合理使用 :enabled 能让表单更直观,帮助用户快速定位可交互区域,尤其在复杂页面中效果明显。不复杂但容易忽略。










