繁体   English   中英

禁用焦点上的锚点(<a>)元素上的灰色边框

[英]Disable grey border on anchor (<a>) elements on focus

我试图使锚标签周围出现的丑陋灰色边框消失。 CSS属性outline:none; 适用于Firefox,但我怎么能在IE中做到这一点? 最好使用CSS表达式或jQuery。 我并不担心BTW的可访问性。


根据您的建议,我发现这些是最佳解决方案:

  • jQuery(适用于IE浏览器):

     $('a').focus(function() { $(this).blur(); }); 
  • 另一个jQuery选项(仅适用于IE浏览器):

     $('a').focus(function() { $(this).attr("hideFocus", "hidefocus"); }); 
  • CSS(强制大纲的所有其他浏览器):

     a { outline: none; } 

注意:某些浏览器(例如Google Chrome)不会强制关注焦点。

不幸的是,我认为hideFocus是你最好的答案,因为模糊并不总是合适的:

<a href="..." hidefocus="hidefocus">...</a>

http://msdn.microsoft.com/en-us/library/ms533783(VS.85).aspx

听起来你在谈论通过链接选项卡时出现的虚线边框。 你有正确的Firefox解决方案(概述:CSS中没有)。 我用于IE的最佳解决方案是添加一个可以消除焦点的onfocus监听器:

<a href="" onfocus="this.hideFocus=true;">link</a>

看看这个网站,了解如何在全球范围内实现这一目标: http//codylindley.com/Javascript/223/hiding-the-browsers-focus-borders-should-i-shouldnt-i

除非我遗漏了正在讨论的虚线边框,否则概述:无法在Internet Explorer 8中工作(至少对我而言)。 相反,突然有些超链接使用虚线边框呈现(我记得改变的唯一属性是显示:内嵌在包含链接的h2元素上,之后出现虚线边框)。 所以我扔了一个{outline:none; 在我的全局样式表和poof中,在IE8中没有更多的边框!

对于IE,你可以使用这样的Javascript:

<a href="..." onfocus="this.blur();">Click Here</a>

阅读更多: http//www.htmlgoodies.com/beyond/javascript/article.php/3471171

对于Firefox和Safari,概述:无效。

阅读更多: http//css-tricks.com/removing-the-dotted-outline/

这不起作用吗?

a
{
   border: 0;
}
a {
  outline: 0 none !important;
  border: none;
}

a {outline:noneIE 8} css似乎在Firefox,Chrome和IE 8上运行良好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM