CSS 换行标签 CSS3

shuke 2017-9-12 4896

自动换行

word-wrap: break-word; 
word-break: normal;

强迫不换行

white-space:nowrap;

允许长单词换行到下一行:

word-wrap: break-word;

控制换行所用到的CSS属性一共有三个:

word-wrap: normal(默认) | break-word

normal: 允许内容顶开指定的容器边界。

break-word: 内容将在边界内换行。必要时会触发word-break(注意:请分辨清楚word-break和break-word这俩个是不同的东西,一为属性另为参数)

word-wrap是控制是否“为词断行”的,设置或检索当前行超过指定容器的边界时是否断开转行。中文没有任何问题,英文语句也没问题。但是对于长串的英文,就不起作用。

word-break; 

word-break: normal(默认) | break-all | keep-all

Firefox、Opera不能识别

normal: 依照亚洲语言和非亚洲语言的文本规则,允许在字内换行。

break-all: 该行为与亚洲语言的normal相同。也允许非亚洲语言文本行的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本。

keep-all: 与所有非亚洲语言的normal相同。对于中文,韩文,日文,不允许字断开。适合包含少量亚洲文本的非亚洲文本。

white-space: normal(默认) | pre | nowrap

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

pre: 空白会被浏览器保留。其行为方式类似HTML中的pre标签。

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

一般情况下,元素拥有默认的white-space:normal(自动换行,PS:不换行是white-space:nowrap),当录入的文字超过定义的宽度后会自动换行,但当录入的数据是一堆没有空格的字符或字母或数字(常规数据应该不会有吧,但有些测试人员是会这样子做的),超过容器宽度时就会把容器撑大,不换行。

解决方法(以IE,chrome,FF为测试浏览器):

word-break:break-all; /*支持IE,chrome,FF不支持*/

word-wrap:break-word;/*支持IE,chrome,FF*/


最新回复 (0)
全部楼主
返回