html - chrome 29 和 firefox 23 (ubuntu 12.04) 中不同的边框位置

标签 html css google-chrome firefox

HTML:

<div class="st1">
  <a href="#">test</a>
</div>
<div class="st2">
</div>

和CSS:

.st1 a {
    text-decoration: none;
    border-bottom: 2px solid red;
    padding: 0px;
    margin: 0px;
}
.st1 {
    padding: 0px;
    margin: 0px;
}
.st2 {
    padding: 0px;
    margin: 0px;
    border-top: 2px solid green;
}

http://jsfiddle.net/uk4Ug/embedded/result/

在 Firefox 中呈现: firefox.png

Chrome :chrome.png

我想要在 Chrome 中呈现与在 Firefox 中相同的呈现。如何解决?

最佳答案

首先,在我的 Firefox 副本中(在 OSX/Windows 上稳定版/Nightly),您的 fiddle 呈现的效果与您在“Chrome”中的呈现方式类似。

您可以将 a 设为 inline-block 并通过相同大小的负边距平衡边框:

.st1 a {
     display: inline-block;
     /* ... */
}
.st1 a:hover {
    border-bottom: 2px solid red;
    margin-bottom: -2px;
    /* ... */
}

Complete fiddle基于你的。

关于html - chrome 29 和 firefox 23 (ubuntu 12.04) 中不同的边框位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18704373/

相关文章:

html - css hover -> 更改 z-image : doesn't work in IE

css - Chrome 和 Firefox 中动态内容的不同滚动行为

java - 如何使用 Chrome Webdriver 关闭下载横幅?

html - 如何使用 CSS 创建这样的带阴影的 div

javascript - 获取动态创建的文本区域的 ID

jquery - 如何防止 anchor 滚动

html 表单 - 使输入出现在同一行

javascript - Sails.js + grunt 不编译 Assets

css - 标准化内联 block 列表项高度

css - 评论作者姓名在 Chrome 中呈现得很好,但在 IE 8 中半空白