# 超宽文本替换为省略号
# 单行文本省略
div {
width: 500px;
overflow: hidden;
text-overflow: ellipsis;
/* 如果不加下面这句是没有效果的,因为浏览器不知道你要从哪里开始省略 */
white-space: nowrap;
}
# 多行文本省略
- 私有属性实现
可能有兼容性问题,但是简单
div {
height: 150px;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 6;
}
- 伪元素实现
没有兼容性问题,但是相对复杂
div {
height: 135px;
overflow: hidden;
position: relative;
/* 两端对齐后省略号与最后一个字的距离会比较固定 */
text-align: justify;
padding: 0 1em;
}
/* 将省略号固定在右下角 */
div::before {
content: "...";
position: absolute;
bottom: 0;
right: 0;
}
div::after {
content: "";
/* 文字全部显示的时候小块会把省略号挡住,因此颜色与文字背景色相同 */
background-color: white;
width: 1em;
height: 1.5em;
position: absolute;
/* 不能固定在右下角 */
right: 0;
}
← 前端笔记