换行相关属性

换行相关的几个属性

参考:

属性名 属性值
word-wrap normal | break-word
word-break normal | break-all | keep-all | break-word
overflow-wrap normal | break-word | anywhere

white-space

属性名 属性值
white-space normal | nowrap | pre | pre-wrap | pre-line | break-spaces
white-space 用于处理空白符,以及控制换行,但是不规定是否强制换行。

word-break

word-break 属性值最多,其中的 break-all 和 keep-all 都与 CJK 有关。

观察看来,word-wrap 和 word-break 的 break-word 效果几乎相同,和 break-all 的区别在于,break-all “能断则断”,可以把一个完整的单词从中间换行。

overflow-wrap

至于 overflow-wrap,这是一个新的属性,用于替换之前的 word-wrap。

word-wrap 属性原本属于微软的一个私有属性,在 CSS3 现在的文本规范草案中已经被重名为 overflow-wrap 。
word-wrap 现在被当作 overflow-wrap 的 “别名”。 稳定的谷歌 Chrome 和 Opera 浏览器版本支持这种新语法。
From: https://developer.mozilla.org/zh-CN/docs/Web/CSS/word-wrap

overflow-wrap的 anywhere 应用的换行宽度更小,小到会对英文的单个字母或中文的单个汉字进行换行(注意下面例子的 min-content):

.text {
    width: min-content;
    margin: 50px;
    background-color: pink;
    overflow-wrap: anywhere; 
}

html 代码:

<div class="text">
        Most words are short & don't need to break. But Antidisestablishmentarianism is long. The width is set to
        min-content, with a max-width of 11em.
</div>

posted @ 2020-05-26 13:30  Ainsliaea  阅读(203)  评论(0编辑  收藏  举报