Element UI 按钮点击后残留 :focus
样式,通常不是 bug,而是浏览器的默认行为。当用户点击按钮时,按钮会获得焦点(focus),并且浏览器会应用 :focus
样式来指示当前焦点元素。这是为了辅助键盘导航和可访问性。
如果你不希望按钮在点击后保持 :focus
样式,可以通过以下几种方式解决:
blur()
方法在按钮的点击事件处理函数中,手动调用 blur()
方法来移除焦点。
<el-button @click="handleClick">点击我</el-button>
methods: {
handleClick(event) {
// 处理点击逻辑
event.target.blur(); // 移除焦点
}
}
你可以通过 CSS 来移除或覆盖 :focus
样式。
.el-button:focus {
outline: none; /* 移除默认的焦点轮廓 */
box-shadow: none; /* 移除阴影效果 */
}
tabindex
属性如果你不希望按钮在点击后获得焦点,可以将 tabindex
设置为 -1
,这样按钮将不会在点击后获得焦点。
<el-button tabindex="-1">点击我</el-button>
Element UI 按钮点击后残留 :focus
样式是浏览器的正常行为,旨在提升可访问性。如果你不希望按钮保持焦点样式,可以通过 JavaScript 或 CSS 来移除或覆盖这些样式。