truncate 类(推荐)Tailwind 提供了封装好的 truncate 类,直接应用即可实现单行文本溢出省略:
<p class="truncate">这是一段很长的文字,超出部分会显示省略号...</p>
truncate 类内部已包含以下 CSS 属性:
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
若需更灵活控制,可手动组合以下类:
<p class="overflow-hidden whitespace-nowrap overflow-ellipsis">
这是一段很长的文字,超出部分会显示省略号...
</p>
overflow-hidden:隐藏溢出内容。whitespace-nowrap:强制文本单行显示。overflow-ellipsis:溢出时显示省略号。
Tailwind 通过官方插件 @tailwindcss/line-clamp 实现多行文本省略,需先安装并配置插件。
npm install @tailwindcss/line-clamp
# 或
yarn add @tailwindcss/line-clamp
tailwind.config.js在配置文件中注册插件:
// tailwind.config.js
module.exports = {
plugins: [
require('@tailwindcss/line-clamp'),
],
}
line-clamp-{n} 类通过 line-clamp-{n} 指定最大显示行数,超出部分显示省略号:
<p class="line-clamp-3">
这是一段很长的文字,超出三行后会显示省略号...
</p>
line-clamp-1 到 line-clamp-5:限制 1~5 行。line-clamp-none:取消行数限制。
-webkit-line-clamp 属性,现代浏览器支持良好,但部分旧版浏览器可能不兼容。md:line-clamp-2。
通过以下类控制省略号显示位置:
truncate:省略号在末尾(默认)。truncate-start:省略号在开头。truncate-middle:省略号在中间。truncate-end:省略号在末尾。
可通过 CSS 自定义省略号样式(需结合伪元素):
.custom-ellipsis::after {
content: '...';
color: red;
}
text-ellipsis:仅控制溢出省略号,需配合 overflow-hidden 使用。text-clip:直接截断文本,不显示省略号。
| 场景 | 推荐方法 | 所需依赖 |
|---|---|---|
| 单行省略 | truncate 或组合类 |
无 |
| 多行省略 | @tailwindcss/line-clamp 插件 |
插件安装与配置 |
| 省略号位置 | truncate-{position} 类 |
Tailwind 3.3+ |
| 根据需求选择合适方案,确保兼容性和开发效率。 |