3

我了解大纲用于可访问性,但另一种方法是:

a {
   outline: 0;
}

在 IE7 中有效的东西

也许使用 Jquery?

4

4 回答 4

2

对于 jquery,你可以尝试这样的事情

$('a').focus(function() {
  $(this).blur();
});

它本质上与仅 IE 7 的解决方案相同,它说当锚点聚焦时,将其模糊。我在 Mac VM IE 7 上试过这个,它可以工作

http://jsfiddle.net/QnMLR/2/

顶部有轮廓,底部没有

于 2012-07-06T12:51:08.650 回答
1

现在习惯了focus

a:hover, a:active, a:focus{
outline:0;
}

更多信息http://css-tricks.com/removing-the-dotted-outline/


更新即解决方案是

a:focus, *:focus {
    noFocusLine: expression(this.onFocus=this.blur());
}

更多信息http://www.cssjunction.com/css/remove-dotted-border-in-ie7/

于 2012-07-06T11:04:08.657 回答
1

这也适用于 jquery,并且不会弄乱标签顺序:

$(function ()
{
    $("a").each(function() {
        $(this).attr("hideFocus", "true").css("outline", "none");
    });
});
于 2012-10-16T19:45:30.823 回答
0

我认为 _noFocusLine 在 IE7 中确实有效

a{
    outline: none;
    _noFocusLine: expression(this.hideFocus=true);
}

我从这里找到了这个,我自己试过了。希望这会帮助你。

于 2013-07-08T07:16:00.913 回答