| 去除虚线框的方法 | 优劣 | 兼容性 | 是否中断tab |
| <a href=”#” onfocus=”this.blur()”>this blur</a> | 链接聚焦触发时失去焦点,js和html耦合在一起 | 无 | 是 |
| a:focus {outline:none; -moz-outline:none} | outline由css2.1引入,去除虚线框视觉上的问题正是css的职责 | ie6/ie7不支持,ie8+/ff /safari/opera[2]支持 | 否 |
| <a href=”#” hidefocus=”true” >hidefocus</a> | 该属性是ie的私有属性[3] | ie5+支持 | 否 |
|
a{blr:expression(this.onFocus=this.close());} a{blr:expression(this.onFocus=this.blur());} | 可批量处理,但expression的性能问题不能忽视 | expression ie6/7支持,ie8+、非ie不支持 | 是 |
综合以上,去除链接虚线框的推荐方法是:ie下用hidefocus属性,ff/chorme/opera/safari下用outline:none。
即:<a href=”#” hidefocus=”true” >链接</a>
a:focus {outline-style:none; -moz-outline-style: none;}
本文探讨了如何在不同浏览器环境下去除链接的虚线框,提供了HTML和CSS解决方案及IE私有属性的使用方法,并对比了它们的兼容性和性能。

787

被折叠的 条评论
为什么被折叠?



