首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >删除使用CSS文本装饰时的一个像素间隙:下划线

删除使用CSS文本装饰时的一个像素间隙:下划线
EN

Stack Overflow用户
提问于 2012-08-07 13:30:43
回答 4查看 476关注 0票数 0

我的站点上有下面的CSS和标记,当我悬停在Account链接上时会产生下划线。

默认情况下,下划线显示在文本之外的一个像素上。是否有可能使下划线直接在文本下,而没有一个像素的间隙。

我想为我的网站上的所有链接,如果可能的话。

代码语言:javascript
运行
复制
a:active {
    outline: none;
}

a.current {
    text-decoration: underline;
    color: #000000;
    outline: none;
}
a:hover, a.active {
    color: #000000;
    outline: medium none;
    text-decoration: underline;
}

<a href="http://www.ayrshireminis.com/account/login/">Account</a>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-08-07 13:57:57

是的,您可以使用底部边框,但您需要启用内联块样式,以便正确地调整锚的线高:

代码语言:javascript
运行
复制
a {
    text-decoration: none;
    color: #c64;

    /* cross-browser inline-block styling */
    display:inline-block;
    zoom:1;
    *display:inline;

    /* alter line-height until the border appears where you want it */
    line-height: .7em;
}

a:hover, a:active{
    padding-bottom:0;
    border-bottom:1px solid black;
}

jsFiddle DEMO

票数 2
EN

Stack Overflow用户

发布于 2012-08-07 13:35:35

不,你不能修改它。但是,您可以使用如下所示的方法来伪装它:

代码语言:javascript
运行
复制
a:hover, a.active{
    border-bottom:1px solid black;
}​

a{
    padding-bottom:0;
    display:inline-block;
    line-height:.8 /*adjust accordingly*/;
}

要使直线高度正常工作,需要display:inline-block;

票数 0
EN

Stack Overflow用户

发布于 2012-08-07 13:55:47

您可能希望使<a>成为一个块,否则填充不会产生任何效果。

a { display: block; line-height:0.75em; ... etc }

a:hover { border-bottom:1px solid #000; }

http://jsfiddle.net/y49jN/3/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11847131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档