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

时间:2021-05-08

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

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

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

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

CSS Code复制内容到剪贴板
  • <styletype="text/css">
  • a,input,button{outline:none;}
  • ::-moz-focus-inner{border:0px;}
  • </style>
  • </head>
  • <body>
  • <ahref="http://www.admin10000.com"target="_blank"><imgsrc="http://www.admin10000.com/skin/logo.jpg"border="0"></a>
  • <ahref="http://www.admin10000.com"target="_blank">admin10000.com</a>
  • <inputtype="button"value="admin10000.com"/>
  • <button>admin10000.com</button>
  • </body>
  •   从以上代码可以看出,可以通过设置CSS属性outline解决。

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

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

    CSS Code复制内容到剪贴板
  •   <ahref="http://www.admin10000.com"target="_blank"onfocus="this.blur()">admin10000.com</a>
  •   使用jquery方法只需一句,非常简单,支持所有浏览器

    JavaScript Code复制内容到剪贴板
  •   $("a,input,button").focus(function(){this.blur()});
  • 声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章