您的位置:首页 > 其它

如何去掉点击链接时周围的虚线框outline属性

2008-12-25 10:47 555 查看
如何隐藏掉点击链接时周围出现的虚线框呢?

在常规情况下,该虚线框是作为一种提示让用户明确当前关注的东西,然而如果我们把链接的4种状态样式设置比较完整的话,就不是特别需要虚线框的存在,因为它很有可能影响页面的美观。尤其是在做应用系统界面的时候,总给人一种浏览网页的感觉,显得不够专业。我就遇到过这种情况,有次做一个WEB应用项目,那用户以前使用桌面软件的,突然转到B/S软件下操作,老是觉得点击链接或按钮出现的虚线框让他很不爽。后来我们挨个把所有会出现虚线框的链接都改过一遍,这客户高兴坏了,后来还说这系统功能性这么一改好用多了<a href="#" hidefocus="true" title="加了hidefocus" >欢迎来到博客园(加了hidefocus属性)</a>

Firefox的处理方法比较符合标准,只需要在样式里设置a:focus{outline:none}皆可:
.xzw_test a.setFocus:focus{outline:none}

方法二:

通过javascript方法让其点击后失去焦点从而达到没有虚线框,也不失为一种曲线救国的方案:

//通过判断可以指定某个必要的链接失去焦点

if(j(this).attr("id")=="jsControl")

j(this).blur();

以下是一些综合演示实例:

.xzw_test {width:400px; padding:10px}
.xzw_test a:link, .xzw_test a:visited {color:#0099FF}
.xzw_test a:hover{color:#FF6600}
.xzw_test a:active {color:#CC0000}
.xzw_test fieldset{padding:10px; font-size:12px; border:1px solid #ccc; line-height:24px; margin:10px 10px; *margin:0 10px}
.xzw_test legend{margin:0; padding:0; color:#666}
.xzw_test a.setFocus:focus{outline:none;color:#FF6600}
.xzw_test a.cnblogsLogo {display:block; width:133px; height:51px; text-indent:-9999px; background:url(http://www.cnblogs.com/Images/adminlogo.gif) 0 0 no-repeat}
.xzw_test legend span{display:block; width:150px; border:1px solid #ccc; padding:2px; text-align:center}

只在IE下有效的演示
欢迎来到博客园(没有加hidefocus)

欢迎来到博客园(加了hidefocus属性)

只在Firefox下有效的演示
这个链接没设置a:focus,点击会有虚线框

这句话设置了a:focus,鼠标点击不会有虚线框

Firefox和IE下都有效的演示
这个链接没做任何处理,两个浏览器下点击均有虚线框

这个链接在IE、FF下点击都没虚线框

以图代文使用text-indent属性引发的outline问题
欢迎来到博客园
欢迎来到博客园

通过javascript方法实现
这个链接没有用js控制

通过js控制blur(),让其点击后失去焦点从而达到没有虚线框

后记:以上演示均在Firefox 3.0.5,IE6/IE7/IE8 beta2下测试通过。至于Opera貌似就没有虚线框这个说法,呵呵,真好使(弱弱的提示下,Opera也是很WEB标准的浏览器哦,大伙不妨多用用

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: