如何解决 CSS 中文本溢出时背景色也溢出的问题?

如何解决 css 中文本溢出时背景色也溢出的问题?

文字单行溢出省略号时,去掉多余背景色的方法

在使用 css 中的 text-overflow: ellipsis 属性时,如果文本内容过长导致一行溢出,且文本带有背景色,溢出的部分也会保留背景色。但如果想要去掉最后多余的背景色,可以采用以下方法:

给 text 元素添加一个 display: inline-block 样式。这样一来,文字截断就会基于 text 的块元素来处理。原本 text 元素是内联元素,直接将其截断会导致背景色也一起截断。通过将其转换为块元素,截断行为就会根据 text 的块元素来判断,背景色也能正常保留在文本范围内。

修改后的代码如下:

.oneline {
  width: 640rpx;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text {
    background-color: #999999;
    padding: 4rpx 8rpx;
    margin-right: 12rpx;
    display: inline-block;
  }
}

以上就是如何解决 CSS 中文本溢出时背景色也溢出的问题?的详细内容,更多请关注其它相关文章!