You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

文本溢出时ellipsis未显示,需实现多行文本溢出省略效果

解决React项目中多行文本溢出省略号不显示的问题

你当前的CSS配置仅适用于单行文本溢出截断,text-overflow: ellipsis 默认不支持多行场景。要实现多行文本末尾显示省略号,需要补充WebKit内核的私有CSS属性来控制多行截断逻辑。

修改后的CSS代码

.App {
  font-family: sans-serif;
  text-align: center;
}

.text {
  padding: 20px;
  line-height: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 200px;
  margin: 50px;
  background: yellow;
  height: 150px;
  /* 新增多行截断属性 */
  display: -webkit-box;
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
}

属性说明

  • display: -webkit-box:将元素转为WebKit弹性盒模型,为多行截断提供基础布局支持
  • -webkit-line-clamp: 6:指定文本最多显示6行,数值根据你的容器高度(150px)和行高(20px)计算得出(容器可用高度为150-40=110px,110/20≈5.5,取整为6)
  • -webkit-box-orient: vertical:设置弹性盒的排列方向为垂直,配合-webkit-line-clamp实现按行数截断

兼容性说明

该方案基于WebKit内核,Chrome、Safari、Edge等现代浏览器均支持。若需兼容Firefox等非WebKit浏览器,可通过JavaScript计算文本高度或使用伪元素模拟省略号效果,但原生WebKit方案是最简洁高效的实现方式。

内容的提问来源于stack exchange,提问作者Prathamesh Chavan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 15:32:55