使用 :focus 伪类可实现输入框聚焦高亮,通过 border-color、box-shadow 和 transition 等属性提升交互体验,同时需注意保留 outline 以保障可访问性。

当用户点击或使用Tab键聚焦到输入框时,可以通过 :focus 伪类来触发样式变化,实现高亮效果。这是提升表单交互体验的常用方法。
基本语法与作用
:focus 是CSS中的一个伪类,用于选中获得焦点的表单元素,比如 input、textarea 等。一旦用户激活该元素,设定的样式就会立即生效。
常见用法如下:
input:focus {border-color: #007bff;
outline: none;
box-shadow: 0 0 5px rgba(0, 123, 255, 0.5);
}
关键样式属性说明
通过组合几个CSS属性,可以让输入框的高亮更明显且美观:
立即学习“前端免费学习笔记(深入)”;
- border-color:改变边框颜色,直观提示当前操作的输入框
- outline:浏览器默认会有蓝色外框,设为 none 可自定义样式,但注意可访问性
- box-shadow:添加发光或阴影效果,增强视觉反馈
- transition:加入过渡动画,使样式变化更平滑
完整示例代码
以下是一个实用的高亮样式写法:
input {padding: 10px;
border: 2px solid #ccc;
border-radius: 4px;
transition: all 0.3s ease;
}
input:focus {
border-color: #007bff;
box-shadow: 0 0 8px rgba(0, 123, 255, 0.3);
outline: none;
}
这样在聚焦时,输入框会平滑地变为蓝色边框并带有光晕效果。
注意事项
移除 outline 虽然能让设计更整洁,但可能影响键盘用户的可访问性。如需保留可用性,可自定义 outline 样式代替完全去除:
input:focus {outline: 2px solid #007bff;
outline-offset: 2px;
} 基本上就这些,不复杂但容易忽略细节。










