通过javascript删除或禁用浏览器的焦点边框

hel*_*lle 59 html javascript css tabindex

有没有人知道如果它具有tabindex顺序的焦点,如何禁用或操纵(在大多数浏览器中)dom元素的虚线边框?

我想为聚焦元素构建自己的样式,但使用现有功能会很棒,因为使用tabindex可以将keydown事件绑定到dom元素.

Gab*_*oli 153

只需为您想要的元素制作CSS规则 outline:none;

  • 这很好,如果您用鼠标单击边框不再出现的项目,但如果您通过键盘导航?你如何突出元素? (2认同)

gok*_*eci 31

CSS技巧:

:focus { outline: none; }
Run Code Online (Sandbox Code Playgroud)

  • 一旦禁用浏览器中的原生辅助功能,就必须考虑可用性问题。我建议创建自己的轮廓焦点,例如背景颜色为黄色。 (4认同)

小智 5

在 Firefox 53.0 中,如果我使用建议的解决方案之一禁用大纲,Firefox 将显示默认解决方案。

但是,如果我使用空白颜色,它不会检测到轮廓被隐藏:

input:focus{
   outline: 1px solid rgba(255,255,255,1);
}
Run Code Online (Sandbox Code Playgroud)