css去掉input获取焦点或者激活时的默认边框
在CSS中去除input获取焦点或激活时的默认边框,可以通过以下方式实现:
1. 去除默认焦点样式:
input {
  outline: none;
}2. 针对Element Plus组件库的el-input组件:
:deep(.el-input__inner) {
  outline: none;
}
/* 或者更具体的选择器 */
:deep(.el-input__wrapper) {
  outline: none;
  box-shadow: none !important; /* Element Plus可能会使用box-shadow模拟边框 */
}3. 完整示例(可添加到你的Header.vue样式中):
/* 去除所有input元素的焦点边框 */
input:focus {
  outline: none;
}
/* 去除Element Plus输入框的焦点样式 */
:deep(.el-input__inner:focus) {
  outline: none;
  border-color: initial; /* 保持原有边框颜色或设置为transparent */
}
/* 如果使用了el-input-group等组件 */
:deep(.el-input-group__append:focus),
:deep(.el-input-group__prepend:focus) {
  outline: none;
}4. 注意事项:- 为了保持可访问性,建议添加自定义的焦点样式 - 可以使用 `:focus-visible` 伪类来仅在键盘导航时显示焦点样式
/* 保持键盘导航的可访问性 */
input:focus-visible {
  outline: 2px solid #409eff; /* 自定义焦点样式 */
  outline-offset: 1px;
}
input:not(:focus-visible) {
  outline: none;
}
蜀ICP备16028301号-5