我可以使Firefox在此链接上不显示点状的难看的焦点轮廓:
a:focus {
outline: none;
}
但是,我也该如何对<button>
标签执行此操作?当我这样做时:
button:focus {
outline: none;
}
单击这些按钮时,它们的焦点轮廓仍为虚线。
(是的,我知道这是一个可用性问题,但是我想提供适合于设计的我自己的焦点提示,而不是难看的灰色点)
我可以使Firefox在此链接上不显示点状的难看的焦点轮廓:
a:focus {
outline: none;
}
但是,我也该如何对<button>
标签执行此操作?当我这样做时:
button:focus {
outline: none;
}
单击这些按钮时,它们的焦点轮廓仍为虚线。
(是的,我知道这是一个可用性问题,但是我想提供适合于设计的我自己的焦点提示,而不是难看的灰色点)
Answers:
button::-moz-focus-inner {
border: 0;
}
:focus {outline:none !important;}
无需定义选择器。
:focus {outline:none;}
::-moz-focus-inner {border:0;}
但是,这违反了W3C的可访问性最佳做法。该大纲可帮助那些使用键盘导航的人。
<button>
<a>
<input>
without ... an author-supplied visual focus indicator
-换句话说,可以用自己的样式替换用户代理样式,就像OP提到的那样。理想情况下,它应该是高对比度的。
以下是在我想使用LINKS(共享)的情况下为我工作的方式(如果有人感兴趣)。
a, a:visited, a:focus, a:active, a:hover{
outline:0 none !important;
}
干杯!
a { outline: none; }
足够的链接即可。
a { outline: none; }
带有!important
> -a { outline: none !important; }
:focus, :active {
outline: 0;
border: 0;
}
a
元素,因此我找到了一个不错的选择 body :focus, body :active { outline: 0; border: 0; }
::-moz-focus-inner { border: 0; }
[更新]此解决方案不再起作用。对我有用的解决方案是这个https://stackoverflow.com/a/3844452/925560
标记为正确的答案不适用于Firefox 24.0。
为了删除Firefox在按钮和锚标记上的虚线轮廓,我添加了以下代码:
a:focus, a:active,
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
select::-moz-focus-inner,
input[type="file"] > input[type="button"]::-moz-focus-inner {
border: 0;
outline : 0;
}
我在这里找到了解决方案:http : //aghoshb.com/articles/css-how-to-remove-firefoxs-dotted-outline-on-buttons-and-anchor-tags.html
在这里尝试了大多数答案,但是没有一个对我有用。当我意识到也必须摆脱Chrome上按钮的蓝色轮廓时,我找到了另一种解决方案。从Chrome中的CSS自定义样式按钮中删除蓝色边框
这段代码在Windows 7的Firefox版本30上对我有用。也许它可以帮助其他人:)
button:focus {outline:0 !important;}
使用CSS在Firefox中无法消除这些点状的焦点。
如果您有权访问Web应用程序所在的计算机,请转至Firefox中的about:config并将其设置browser.display.focus_ring_width
为0。然后Firefox根本不会显示任何虚线边框。
以下错误说明了该主题:https : //bugzilla.mozilla.org/show_bug.cgi?id=74225
::-moz-focus-inner {border:0;}
其他几个答案中提到的效果很好。
在网络上可以找到许多解决方案,许多解决方案都可以工作,但是要强制执行,因此一旦使用以下命令,绝对没有任何内容可以突出显示/聚焦:
::-moz-focus-inner, :active, :focus {
outline:none;
border:0;
-moz-outline-style: none;
}
这只会增加一点点额外的安全性并达成协议!
这将得到范围控制:
:focus {
outline:none;
}
::-moz-focus-inner {
border:0;
}
input[type=range]::-moz-focus-outer {
border: 0;
}
range
-谢谢:)
使用此代码在Firefox 46和Chrome 49上进行了测试。
input:focus, textarea:focus, button:focus {
outline: none !important;
}
之前(可见白点)
如果只想应用在几个输入字段,按钮等上,请使用更具体的代码。
input[type=text] {
outline: none !important;
}
快乐编码!
!important
需要,我重写Firefox的样式表。干杯!
只需为选择框添加此CSS
select:-moz-focusring {
color: transparent;
text-shadow: 0 0 0 #000;
}
这对我来说很好。
您可能需要加强重点而不是摆脱重点。
button::-moz-focus-inner {border: 2px solid transparent;}
button:focus::-moz-focus-inner {border-color: blue}
如果您在按钮上有边框,并且想要在Firefox中隐藏虚线轮廓而不删除边框(因此按钮上有多余的宽度),则可以使用:
.button::-moz-focus-inner {
border-color: transparent;
}
以下CSS代码可消除此问题:
a:focus, a:active,
button::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner,
input[type="submit"]::-moz-focus-inner,
select::-moz-focus-inner,
input[type="file"] > input[type="button"]::-moz-focus-inner {
border: 0;
outline : 0;
}
在尝试了上述多种选择之后,以下仅对我有用。
*:focus, *:visited, *:active, *:hover { outline:0 !important;}
*::-moz-focus-inner {border:0;}
button:focus { outline: none !important }
或者,如果您喜欢我不喜欢!important,这也可以覆盖Firefox样式: :root button:focus { outline: none }
我与Bootstrap 3一起使用了这段代码。第二组规则只是撤消引导程序对焦点/活动按钮的作用:
button::-moz-focus-inner {
border: 0; /*removes dotted lines around buttons*/
}
.btn.active.focus, .btn.active:focus, .btn.focus, .btn.focus:active, .btn:active:focus, .btn:focus{
outline:0;
}
注意,您的自定义css文件应位于html代码中的Bootstrap css文件之后,以覆盖它。
是的,不要错过!重要
button::-moz-focus-inner {
border: 0 !important;
}