⤴Top⤴

CSS 换行与断词

博客分类: 前端

CSS 换行与断词

CSS 换行与断词

换行属性

CSS 里涉及到换行的与断词几个属性晒一晒:

word-break

word-break:normal | keep-all | break-all

word-break 用于处理单词换行和断词规则,取值为:

word-wrap

word-wrap:normal | break-word

word-wrap 设置当内容超过指定容器的边界时是否断词,取值为:

white-space

white-space:normal | pre | pre-wrap | pre-line  | nowrap

white-space 设置空白处理方式,取值为:

配合 text-overflow 样式,取值为:

.ellipsis {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

-webkit-line-clamp

-webkit-line-clamp 属性可以把块容器中的内容限制为指定的行数,它只有在 display 属性设置成 -webkit-box/-webkit-inline-box 并且 -webkit-box-orient: vertical 时才有效果。在大部分情况下,也需要设置 overflow: hidden, 否则,里面的内容不会被裁减,并且在内容显示为指定行数后还会显示省略号(ellipsis):

强制两行省略的话,可以这样写:

.item {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

块级 / 内联

在文档流里,会涉及到块级元素(block-level elements)内联元素(inline elements),区别为:

区别 块级元素 内联元素
display block inline
行显示 独占一行 在一行显示,直到排满
宽高 支持 width、height 属性 不支持 width、height 属性
补白 支持 padding、margin 属性 不支持 padding、margin 竖直方向的属性
元素类别 div、form、h1~h6、li、p 等 a、span、input 等

通过 display 属性可以设置元素的布局行为,相关常用的取值为:

display:none | inline | block | inline-block | flex | (...)

参考链接

  1. CSS 单词换行 and 断词,你真的完全了解吗