css中下划线和文字部分重叠且长度和文字自适应

text-decoration-skip是与text-decoration相关的CSS3属性。效果很不错,不过缺点在于目前只有Safari8+浏览器支持带-webkit-私有前缀的text-decoration-skip属性,且仅仅支持skip(默认值)和none两个值。此方法是最原生的,但是由于兼容性问题,目前还不太合适。方法二:使用border-bottom属性模拟 我觉得这是...
css中下划线和文字部分重叠且长度和文字自适应
方法一:text-decoration-skip指定覆盖关系
text-decoration-skip是与text-decoration相关的CSS3属性。

效果很不错,不过缺点在于目前只有Safari8+浏览器支持带-webkit-私有前缀的text-decoration-skip属性,且仅仅支持skip(默认值)和none两个值。

此方法是最原生的,但是由于兼容性问题,目前还不太合适。

方法二:使用border-bottom属性模拟
我觉得这是一个不错的想法,CSS博大精深,哈哈。^.^

内联元素虽然不支持垂直方向的margin属性,但是支持垂直方向的padding属性和border属性,并且,对原来的布局定位等没有任何影响。因此,配合padding,我们就可以很有效地调节下边框和文字下边缘的距离,实现我们最想要的的效果。(张老师的原话)

代码如下:

a {
text-decoration: none;
border-bottom: 1px solid;
}
这样写的有点在于border-bottom还有dashed属性,我们还可以创造虚线下划线 :P

a {
text-decoration: none;
border-bottom: 1px dashed;
}
效果图:金玉全王
方法三:使用box-shadow属性模拟
使用box-shadow的想法也是很棒的,其实动动脑子,CSS还有好多玩法。(●'◡'●)

直接上代码~

a {
text-decoration: none;
box-shadow: 0 1px;
}
这里box-shadow用了两个值,在这里解释一下:
box-shadow: h-shadow v-shadow blur spread color inset;
此处的两个值分别是 h-shadow 和 v-shadow。
h-shadow:水平阴影的位置。允许负值。
v-shadow:垂直阴影的位置。允许负值。

垂直阴影为1px于是就有了下划线的样子。
相比border-bottom属性,box-shadow的优势在于,即使我们把内联元素设置成display:inline-block,生成的下划线也不会对垂直对齐或者布局产生影响,但,如果是border-bottom,会增加元素的尺寸,可能就会影响元素的排列。
但是,box-shadow也有不足,一是兼容性,IE9+才支持,二是只能实线,不能虚线。2021-06-25
方法一:text-decoration-skip指定覆盖关系
text-decoration-skip是与text-decoration相关的CSS3属性。

效果很不错,不过缺点在于目前只有Safari8+浏览器支持带-webkit-私有前缀的text-decoration-skip属性,且仅仅支持skip(默认值)和none两个值。

此方法是最原生的,但是由于兼容性问题,目前还不太合适。

方法二:使用border-bottom属性模拟
我觉得这是一个不错的想法,CSS博大精深,哈哈。^.^

内联元素虽然不支持垂直方向的margin属性,但是支持垂直方向的padding属性和border属性,并且,对原来的布局定位等没有任何影响。因此,配合padding,我们就可以很有效地调节下边框和文字下边缘的距离,实现我们最想要的的效果。(张老师的原话)

代码如下:

a {
text-decoration: none;
border-bottom: 1px solid;
}
这样写的有点在于border-bottom还有dashed属性,我们还可以创造虚线下划线 :P

a {
text-decoration: none;
border-bottom: 1px dashed;
}
效果图:金玉全王
方法三:使用box-shadow属性模拟
使用box-shadow的想法也是很棒的,其实动动脑子,CSS还有好多玩法。(●'◡'●)

直接上代码~

a {
text-decoration: none;
box-shadow: 0 1px;
}
这里box-shadow用了两个值,在这里解释一下:
box-shadow: h-shadow v-shadow blur spread color inset;
此处的两个值分别是 h-shadow 和 v-shadow。
h-shadow:水平阴影的位置。允许负值。
v-shadow:垂直阴影的位置。允许负值。

垂直阴影为1px于是就有了下划线的样子。
相比border-bottom属性,box-shadow的优势在于,即使我们把内联元素设置成display:inline-block,生成的下划线也不会对垂直对齐或者布局产生影响,但,如果是border-bottom,会增加元素的尺寸,可能就会影响元素的排列。
但是,box-shadow也有不足,一是兼容性,IE9+才支持,二是只能实线,不能虚线。2021-06-15
mengvlog 阅读 33 次 更新于 2025-08-11 06:08:08 我来答关注问题0
  • box-shadow: h-shadow v-shadow blur spread color inset;此处的两个值分别是 h-shadow 和 v-shadow。h-shadow:水平阴影的位置。允许负值。v-shadow:垂直阴影的位置。允许负值。垂直阴影为1px于是就有了下划线的样子。相比border-bottom属性,box-shadow的优势在于,即使我们把内联元素设置成display:in...

  •  imweber 怎样把文字下的下划线对齐?

    在CSS中,可以使用"text-decoration"属性添加下划线到文本上。要使下划线与文本的基线对齐,可以使用"vertical-align"属性。以下是实现下划线与文本基线对齐的样式示例:.text-underline { text-decoration: underline;vertical-align: bottom;} 在上面的代码中,"text-decoration"属性添加下划线到文本上,"vert...

  • 有时候UI设计的时候文字下方会有一个下划线,所以我们经常用 text-decoration:underline 来设置一个下划线,但是呢,发现这个下划线和文字特么的重合了,来没法设置,只能用别的方法代替了,啪啪啪的写一大堆css 现在宣布: 春天来了: text-underline-offset 这个css可以设置距离文字的距离,百分比,还有...

  •  海南加宸 怎样才能先打下划线,然后在上面写字,但下划线不回出现间断啊?

    1. 首先,在需要输入文字的地方,先点击鼠标以选择文本框。2. 然后,在该文本框中插入下划线。可以使用HTML或CSS来实现下划线效果。例如,可以使用HTML的标签,或者通过CSS设置下划线样式。3. 接着,在下划线中输入文字。在下划线文本框中输入“xx”等文字,确保下划线不会出现间断。4. 最后,当用户点击...

  •  O心随缘飘O CSS中如何给文字添加双下划线?

    text-decoration:underline;padding-bottom:2px;border-bottom:1 solid#fff;设置下划线,然后再设置下边缘的border属性,并让其自适应大小,就可以实现双下划线的效果,或者也可以用带双下划线的图片来代替,并让其自适应

檬味博客在线解答立即免费咨询

CSS相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部