代码如下 |
复制代码 |
a{ blr:expression(this.onFocus=this.blur()); /* IE Opera */ outline:none; /* FF Opera */ } a:focus{ -moz-outline-style: none; /* FF */ }
|
全 局控制 CSS实现 a{blr:expression(this.onFocus=this.close());} /* 只支持IE,过多使用效率低 */ a{blr:expression(this.onFocus=this.blur());} /* 只支持IE,过多使用效率低 */ a:focus { -moz-outline-style: none; } /* IE不支持 */ |
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
当一个链接得到焦点时,默认会有个虚线框。如图:
在 Firefox 里可以用 -moz-outline:none; 或者 outline:none; 来将其去掉。所以我们可以这样写:
代码如下 |
复制代码 |
a:focus {
outline:none;
-moz-outline:none;
}
|
顺便提一下,如果你用过 Safari 和 Chrome 可能会发现,当输入框得到焦点时边框会出现阴影效果。
如果想去掉阴影效果也可以用 outline 属性。
代码如下 |
复制代码 |
input,textarea {
outline:none;
}
|
言归正传,刚刚说的是 Firefox ,现在说说 IE。首先比较遗憾,还没有找到通过 CSS 去掉 IE 链接虚线框比较好的解决办法。所以只能用一个替代的办法,就是 a 标签的 hidefocus 属性(这个属性是 IE 独有的)。
注意:JS 脚本对应的属性名是:hideFocus。对应的 JS 代码应该是:
代码如下 |
复制代码 |
xxx.hideFocus = 'true'; |
还有一种不推荐的办法。就是让链接得到焦点的时候失去焦点。
这种办法很管用,但过于暴力,最好不要用了。