CSS中用word-wrap、word-break和white-space控制文本的换行

CSS控制文本内容换行:word-wrap,word-break,white-space,text-overflow的区别和用法

在div中,文本布局经常出现,换行混乱的情况。

我们经常遇到的问题表现为:

1.如果是全英文字符串,中间不包含任何符号(包括空格),不自动换行;

2.中英文混写,则在英文字符串的开始处换行(英文长度>div长度),结尾处不换行;

3.英文整个单词换行。等等,可能还有一些问题,这里只列出了常见的几个。

上面几个css属性即可帮助我们协调解决这些问题。

各自功能的简单用法介绍:

word-wrap:normal | break-word; (内容换行)

normal:默认的属性值.(允许内容顶开指定的容器边界).

break-word:内容将在边界内换行(不截断英文单词换行,截断英文单词下面的属性才具备这个功能。)

word-break:normal | break-all | keep-all (词内换行)

normal:如果是中文则到边界处的汉字换行,如果是英文整个词换行,注意:如果出现某个英文字符串长度超过边界,则后面的部分将撑开边框,如果边框为固定属性,则后面部分将无法显示.

break-all:强行换行,将截断英文单词

keep-all:不允许字断开。如果是中文将把前后标点符号内的一个汉字短语整个换行,英文单词也整个换行,注意:如果出现某个英文.字符串长度超过边界,则后面的部分将撑开边框,如果边框为固定属性,则后面部分将无法显示.

text-overflow:clip | ellipsis (文本溢出)

clip:不显示省略标记(…),而是简单的裁切

ellipsis:当对象内文本溢出时(超过width部分)显示省略标记(…)

white-space: normal | pre | nowrap (内容不换行)

normal:默认。空白会被浏览器忽略。

pre:空白会被浏览器保留。

nowrap:文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。?0?2

(层中放一个表格,如果层的float:none 则表格和层间会有空隙,这种问题的解决办法是在层的style里面加上white-space: nowrap)

未经允许不得转载:爱前端网 » CSS中用word-wrap、word-break和white-space控制文本的换行

赞 (0) 打赏


觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏