# text-overflow
text-overflow CSS (opens new window) 属性确定如何向用户发出未显示的溢出内容信号。它可以被剪切,显示一个省略号('...',U + 2026 HORIZONTAL ELLIPSIS)或显示一个自定义字符串。
这个属性并不会强制“溢出”事件的发生,因此为了能让"text-overflow"能够生效,程序员们必须要在元素上添加几个额外的属性,比如"将
overflow(opens new window) 设置为hidden"。
# 单行文本溢出
/*单行文本溢出*/
.one-txt-cut {
overflow: hidden;
/* 文字在一行显示, 不换行 */
white-space: nowrap;
/* 文字溢出显示省略号 */
text-overflow: ellipsis;
}
2
3
4
5
6
7
8
必要要求:
- 必须是块元素
- text-overflow: ellipsis;属性
- 设置overflow: hidden;
# 多行文本溢出
/*多行文本溢出*/
.txt-cut {
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
2
3
4
5
6
7
8
# white-space
https://developer.mozilla.org/zh-CN/docs/Web/CSS/white-space (opens new window)
white-space CSS 属性是用来设置如何处理元素中的 空白 (opens new window)
nowrap
文本不换行,文字在一行上持续渲染。直到遇到br标签
和 normal 一样,连续的空白符会被合并。但文本内的换行无效。
文本内的空格会渲染,\n不会渲染,文字可以溢出元素

pre
连续的空白符会被保留。在遇到换行符或者 br 元素时才会换行。
行为类似于 pre 标签
即文本内的空格和\n 会被渲染出来,文字可以溢出元素

pre-wrap
比pre多出一个文字溢出时会自动换行的行为

pre-line
tailwindcss
.whitespace-nowrap {
white-space: nowrap;
}
.whitespace-pre {
white-space: pre;
}
2
3
4
5
6
# word-break
https://developer.mozilla.org/zh-CN/docs/Web/CSS/word-break
word-break 指定了怎样在单词内断行,word-break 用于对长单词打断。
keep-all 保持所有单词连在一起,不进行断行
# white-space: nowrap和word-break: keep-all的区别
white-space: nowrap属性指定文本不换行,强制在一行内显示。这意味着文本会溢出容器的边界而不自动换行。word-break: keep-all属性指定保持所有单词连在一起,不进行断行。这意味着只有在遇到空格或其他可打断点的字符时才会进行换行,而不会在单词内部断行。
这两个属性通常一起使用,以确保文本在容器中不换行,并且尽可能地保持每个单词完整显示。
# 文字之间间距letter-spacing
/* Keyword value */
letter-spacing: normal;
/* <length> values */
letter-spacing: 0.3em;
letter-spacing: 3px;
letter-spacing: 0.3px;
2
3
4
5
6
7
← img显示 line-height行高 →