使用CSS去掉超链接的虚线边框的方法

(编辑:jimmy 日期: 2024/10/31 浏览:2)

在前端制作的过程中会发现,一些文字/图片链接,或者一些input控件,在点击时会在周围出现虚线边框,一般会在火狐和IE浏览器下出现虚线框,谷歌下不会有。

  这些虚线边框是作为对视觉设计的一种辅助,在不使用鼠标,而用键盘Tab键进行页面浏览时,会标示出当前所在的链接或控件的位置,便于浏览。这对那些视觉有障碍的人士来说更是必不可少的。

  但是有些时候我们却不想使用它们,因为浏览器对虚线框的解析有差异,并且不规则,所以在视觉设计上反而成为了某种缺陷。所以这种时候,我们想要禁用这些虚线边框,使浏览者的视觉享受能够完美无瑕。

  纯CSS去掉超链接或按钮点击时出现的虚线边框

CSS Code复制内容到剪贴板
  1. <style type="text/css">   
  2. a,input,button{ outline:none; }   
  3. ::-moz-focus-inner{border:0px;}   
  4. </style>   
  5. </head>   
  6. <body>    
  7. <a href="http://www.admin10000.com" target="_blank"><img src="http://www.admin10000.com/skin/logo.jpg" border="0"></a>   
  8. <a href="http://www.admin10000.com" target="_blank">admin10000.com</a>   
  9. <input type="button" value="admin10000.com"/>   
  10. <button>admin10000.com</button>   
  11. </body>  

  从以上代码可以看出,可以通过设置CSS属性outline解决。

  FF存在bug,其中input,button标签通过私有属性::-moz-focus-inner特别处理

  以上方法在IE6、IE7下无效。可使用 onfocus 属性解决,如下:

CSS Code复制内容到剪贴板
  1.   <a href="http://www.admin10000.com" target="_blank" onfocus="this.blur()">admin10000.com</a>  

  使用jquery方法只需一句,非常简单,支持所有浏览器

JavaScript Code复制内容到剪贴板
  1.   $("a,input,button").focus(function(){this.blur()});  

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。