如何删除IE7中链接周围的虚线边框

时间:2012-08-17 14:15:29

标签: html css css3 internet-explorer-7

点击时按钮和链接有边框。

enter image description here

enter image description here

任何人都可以帮我解决方法将其删除。

13 个答案:

答案 0 :(得分:49)

你可以这样预设:

:focus{
    outline:0; /*removes the dotted border*/
}

但请记住(出于可访问性原因)将CSS文件中的“稍后”样式设置为更明显的样式。例如:

a:focus, a:active{
    color:#ff5500; /*different color than regular*/
}
input[type=submit]:focus, input[type=submit]:active{
    background-color:#444; /*different color than regular*/
}

答案 1 :(得分:14)

试试这个

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

答案 2 :(得分:6)

这很难看,但大多数IE修复都是如此。

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

答案 3 :(得分:6)

首先,我可以看到你的一个标签是IE7-bug,而这实际上更像是一个功能。使用此虚线outline的目的是让用户能够使用鼠标滚轮或tab键在各种控件之间导航。

在任何情况下,要在“聚焦”时定义元素的样式,请使用CSS :focus选择器。对此大纲进行样式化的属性是outline; outline: 0会阻止焦点轮廓出现。

注意:您可能希望仅在按钮上应用该规则,而不是在所有元素上应用该规则,因为某些用户可能习惯于看到指示焦点的内容,这样可以更轻松地使用上面提到的方法。

希望以任何方式帮助。

答案 4 :(得分:5)

IE7中不支持CSS outline。那个“浏览器”需要以下CSS表达式:     

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

它也适用于较新版本。

答案 5 :(得分:3)

这可以解决问题

a {
   outline:0;
}

答案 6 :(得分:3)

这也可行

    a 
    {
        outline-style:none;
    }

答案 7 :(得分:3)

一个:链接{     outline-style:none; }`

答案 8 :(得分:2)

尝试设置outline property

a {
   outline: 0;
}

答案 9 :(得分:2)

尝试

a {
     outline: none;
}

始终尝试使用css reset.This将帮助您解决此问题。我使用eric mayer css reset tool

答案 10 :(得分:2)

将此规则应用于输入

input { outline : none ; }

答案 11 :(得分:0)

这是围绕代码删除外线并在所需的类名下放入CSS的代码。 (IE中的className。) 标签示例

a{
    _noFocusLine:expression(this.hideFocus=true);
    outline-style:none;
    outline:0;

}

html页面中所有标签的示例!

*{
    _noFocusLine:expression(this.hideFocus=true);
    outline-style:none;
    outline:0;

}

html页面中具有类myClassName的标记示例!

.myClassName{
    _noFocusLine:expression(this.hideFocus=true);
    outline-style:none;
    outline:0;

}

html页面中id为myidName的标记示例!

#myidName{
    _noFocusLine:expression(this.hideFocus=true);
    outline-style:none;
    outline:0;

}

希望这有助于在主流浏览器中运行,如果不是,它们已经老了,那么仍有多少人使用这种旧浏览器的机会!

注意:outline:none 0;也适用于较新的浏览器,但不适用于所有浏览器。但是outline:0;是通用的,并且在那些浏览器中不会理解“无”并且您获得了默认值,但是0在所有浏览器中都理解使用此大纲: 你需要这个用于IE7 _noFocusLine:expression(this.hideFocus=true);

或者其余的使用Javascript!

window.document.getElementById("myidName").blur();
window.document.getElementById("myidName").hideFocus=true;
window.document.getElementById("myidName").style.outline=0;

Obj=window.document.getElementById("myidName");
Obj.blur();
Obj.hideFocus=true;
Obj.style.outline=0;

或检查元素是否存在!

if (window.document.getElementById("myidName")){
    Obj=window.document.getElementById("myidName");
    Obj.blur();
    Obj.hideFocus=true;
    Obj.style.outline=0;
}

Javascript可以为IE6和IE7以及其他CSS做不了!

答案 12 :(得分:-10)

您可以使用以下代码执行此操作:

   a:focus{
      border: none;
    }