css 给文章打省略号...

在 CSS 中,可以使用省略号(ellipsis)来表示文本溢出时的处理方式,通常是在文本长度超过容器宽度时显示省略号 ...。要实现省略号效果,通常使用 text-overflow 属性,并配合其他一些样式来限制文本的显示区域。

1. 单行文本溢出省略号

  • 用法 :对于单行文本,如果内容超出了容器的宽度,可以使用 text-overflow: ellipsis; 来显示省略号。
  • 需要配合的属性
    • overflow: hidden;:隐藏超出容器的部分。
    • white-space: nowrap;:防止文本换行。
css 复制代码
.single-line-ellipsis {
  width: 200px;            /* 容器宽度 */
  white-space: nowrap;     /* 禁止换行 */
  overflow: hidden;        /* 超出隐藏 */
  text-overflow: ellipsis; /* 显示省略号 */
}

HTML:

html 复制代码
<div class="single-line-ellipsis">这是一个很长的文本,超出部分会显示为省略号。</div>

效果 :当文本长度超过 200px 时,超出部分会显示为 ...

2. 多行文本溢出省略号

  • 用法 :对于多行文本,如果内容超出了容器的高度并且需要显示省略号,可以使用 line-clamp 来实现(需要浏览器支持)。
  • 需要配合的属性
    • display: -webkit-box;:创建一个弹性容器。
    • webkit-line-clamp: n;:指定最多显示多少行文本。
    • webkit-box-orient: vertical;:设置容器的排列方向。
    • overflow: hidden;:隐藏超出的文本。
css 复制代码
.multi-line-ellipsis {
  display: -webkit-box;
  -webkit-line-clamp: 3;      /* 显示三行 */
  -webkit-box-orient: vertical; /* 设置排列方向为垂直 */
  overflow: hidden;            /* 隐藏超出部分 */
  height: 60px;                /* 设置容器高度 */
}

HTML:

html 复制代码
<div class="multi-line-ellipsis">
  这是一个多行文本示例,文本超出容器的部分会显示省略号。这里的文本比较长,应该会在三行后显示省略号。
</div>

效果 :当文本内容超过 3 行时,超出部分会显示为 ...

注意:

  • -webkit-line-clamp 是一个 Webkit 核心的特性,虽然被许多现代浏览器支持,但并不是所有浏览器都兼容,特别是旧版浏览器和某些非 Webkit 引擎的浏览器。
  • 对于多行省略号,使用 line-clamp 需要设置 display: -webkit-box-webkit-box-orient,这使得该功能主要适用于 Webkit 浏览器,如 Chrome、Safari 等。

通过这些方法,你可以有效地在 CSS 中为文本设置省略号,确保内容不会溢出容器并保持界面的整洁。

相关推荐
kyriewen111 小时前
你点的“刷新”是假刷新?前端路由的瞒天过海术
开发语言·前端·javascript·ecmascript·html5
skywalk81633 小时前
Kotti Next的tinyfrontend前端模仿Kotti 首页布局还是不太好看,感觉比Kotti差一点
前端
RopenYuan4 小时前
FastAPI -API Router的应用
前端·网络·python
走粥5 小时前
clsx和twMerge解决CSS类名冲突问题
前端·css
Purgatory0015 小时前
layui select重新渲染
前端·layui
weixin199701080166 小时前
《中国供应商商品详情页前端性能优化实战》
前端·性能优化
赵孝正8 小时前
学习的本质是一个工程闭环:从模仿到内化的四阶段方法论(附风电实战案例)
前端·数据库·学习
Panzer_Jack9 小时前
easy-live2d v0.4.0 — 全面进化的 Live2D Web 开发体验
前端