当前位置:首页 > 经验笔记 > CSS > 正文内容

css去掉input获取焦点或者激活时的默认边框

han32682小时前CSS7

在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;
}


扫描二维码推送至手机访问。

版权声明:本文由瀚文博客发布,如需转载请注明出处。

本文链接:https://www.hanwenblog.com/post/113.html

分享给朋友:

相关文章

elementui中el-row的el-col排列混乱

问题: el-row中el-col排列混乱将el-row中元素改为flex布局设置flex-wrap: wrap,避免el-row中元素span之和超过24时挤在一行.el-row{  &...

CSS/H5保留显示 textarea输入的空格和换行

.show {   white-space: pre-wrap; }...

font-family:微软雅黑; 与 font-family:Microsoft YaHei; 的区别?

区别在于兼容性, 1、font-family:Microsoft YaHei,兼容性强,不会有编码的问题;  2、font-family:"微软雅黑"...

el-row和el-col出现排版错乱

使用场景: 使用了el-row和col配合form使用,不操作时候页面排版是正确的,进行操作就会出现排版错乱。 问题原因: 因为 el-row和el-col的中的span元素之和超过了2...

html头部底部固定高度中间大小自适应填充满屏幕css写法

第一种写法:使用display: flex<!DOCTYPE html> <html lang="en"> <head>...