单行文本溢出用white-space:nowrap、overflow:hidden和text-overflow:ellipsis实现;多行则通过display:-webkit-box、-webkit-line-clamp和-webkit-box-orient:vertical完成,需限定宽度。
当文本内容超出容器宽度时,用省略号(...)表示溢出是常见的UI需求。CSS提供了几种标准方法来实现单行或多行文本的溢出隐藏并显示省略号。
适用于只显示一行文本,超出部分隐藏并以省略号结尾。
关键属性:示例代码:
.single-line {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
width: 200px; /* 需指定宽度 */
border: 1px solid #ccc;
}
用于限制显示2行或更多行文本,超出部分用省略号表示。标准做法依赖 -webkit-line-clamp,目前在主流浏览器中广泛支持。
关键属性:示例代码(限制2行):
.multi-line {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
width: 200px;
line-height: 1.4;
border: 1px solid #ddd;
}
虽然上述方法在现代浏览器中表现良好,但仍需注意以下几点:
基本上就这些。掌握这几个核心样式组合,就能应对大多数文本截断场景。