如何删除IE中链接的边框?

dez*_*cus 59 html css

我有一个导航栏,它由<img>各自<a>元素中的元素组成.然而,由于某种原因,在IE中它在图像周围形成了深黑色边框.它在其他浏览器中没有做同样的事情,我似乎无法弄明白......这是我正在使用的HTML.

<li>
   <a href="#">
      <span id="nav1">
         <img src="tt_1.png" />
      </span>
   </a>
</li>
Run Code Online (Sandbox Code Playgroud)

我有大约5个链接都是这样写的,我用CSS将它设计成导航栏.在其他浏览器上,它就像这样好棒

但在IE上,它就是这样的 坏栏:(

我之前从未遇到过这样的问题,到目前为止我试图修复它的问题还没有成功.有没有办法用CSS取出这些边框?

Mat*_*Bak 127

TL; DR

从所有链接和图像中删除边框:

a, img {
    border:none;
    outline:none;
}
Run Code Online (Sandbox Code Playgroud)


完整版本

如果您只想从链接图像中删除边框,则应执行以下操作:

a img {
    border:none;
    outline:none;
}
Run Code Online (Sandbox Code Playgroud)

唯一的区别是之间没有逗号,a并且img只有a-tags中的图像才会应用此规则

专业提示:使用css重置

像这样的浏览器不一致很多,所以Web开发人员经常使用"css reset",即https://necolas.github.io/normalize.css/http://meyerweb.com/eric/tools/css/reset/.这将(除了其他漂亮的东西之外)重置许多元素上的边框,边距等内容,以便它们在浏览器中更加一致.

  • Jonathan Newmuis的回答更为正确 (5认同)
  • 我添加了一个_outline:none_样式来删除IE中活动链接周围的虚线边框. (2认同)

Jon*_*uis 75

我相信IE会将边界放在链接的图像上.所以你应该能够通过说:

a img {
    border: 0;
}
Run Code Online (Sandbox Code Playgroud)

  • 我认为这是最好的答案,因为它达到了特定的意图,接受的答案可能会产生意想不到的后果. (19认同)

Mic*_*nov 12

添加style="border: none;"到创建边框的任何内容或使用此属性创建css.

  • 这被低估了.我仍然发现将样式应用于一个元素时这很有用.这在发送HTML电子邮件时也是一种很好的做法,在这种情况下,您无法创建CSS规则. (7认同)