一、什么是CSS文本溢出
CSS文本溢出(overflow)指的是当内容超过一个容器的大小时,如何处理这些内容,如何控制内容的显示和隐藏。 当文本超出容器边界时,可以通过设置容器的overflow属性来控制文本是否溢出容器,以及如何处理溢出的文本。
二、CSS文本溢出的属性
CSS文本溢出属性有三个:overflow
、text-overflow
和white-space
。
1、overflow
overflow
属性用于处理内容溢出容器的情况。
overflow
属性有4个值:
overflow: visible; /* 默认值,溢出的内容会出现在容器外面 */
overflow: hidden; /* 溢出的内容将被裁剪 */
overflow: scroll; /* 溢出的内容将出现滚动条 */
overflow: auto; /* 如果溢出,则出现滚动条,否则不出现 */
2、text-overflow
text-overflow
属性用于控制溢出文本的表现形式。
text-overflow
属性只适用于单行文本。
text-overflow
属性有两个值:
text-overflow: clip; /* 默认值,超出的文本将被裁剪 */
text-overflow: ellipsis; /* 超出的文本将以省略号的形式显示 */
3、white-space
white-space
属性用于控制文本换行的规则。
white-space
属性有3个值:
white-space: normal; /* 默认值,只要有需要,文本就会自动换行 */
white-space: nowrap; /* 文本不会自动换行 */
white-space: pre; /* 文本保留格式化之后的换行符 */
三、应用实例
1、文本截断
文本截断是指当文本长度超过容器宽度时,以省略号代替多余的文本内容。这种情况下,可以将overflow
设置为hidden
,white-space
设置为nowrap
,text-overflow
设置为ellipsis
。
div {
width: 200px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
2、滚动条
如果希望当文本长度超过容器宽度时,出现滚动条,同时保持文本的原始格式,可以将overflow
设置为auto
,white-space
设置为pre
。
div {
width: 200px;
white-space: pre;
overflow: auto;
}
3、文本溢出
如果希望当文本长度超过容器宽度时,不出现滚动条,而是将文本隐藏掉,可以将overflow
设置为hidden
,white-space
设置为normal
。
div {
width: 200px;
white-space: normal;
overflow: hidden;
}
四、总结
在实际开发中,文本溢出处理经常用到,更好的控制文本溢出,可以将用户体验提升到更高的层次。