DIV的内容自动换行

原文链接:

http://hi.baidu.com/121308030/item/f654f814388485cc38cb30f4


word-break:break-all和word-wrap:break-word都是能使其容器如DIV的内容自动换行


它们的区别就在于:

1,word-break:break-all 例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单

词很长(congratulation等),它会把单词截断,变成该行末端为conra(congratulation的前端部分),

下一行为tulation(conguatulation)的后端部分了。

2,word-wrap:break-word 例子与上面一样,但区别就是它会把congratulation整个单词看成一个整体,

如果该行末端宽度不够显示整个单词,它会自动把整个单词放到下一行,而不会把单词截断掉的。

3,word-break;break-all 支持版本:IE5以上 该行为与亚洲语言的 normal 相同。也允许非亚洲语言文

本行的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本。 WORD-WRAP:break-word 支持版本:

IE5.5以上 内容将在边界内换行。如果需要,词内换行( word-break )也将发生。表格自动换行,避免撑

开。 word-break : normal | break-all | keep-all 参数: normal :  依照亚洲语言和非亚洲语言的

文本规则,允许在字内换行 break-all :  该行为与亚洲语言的normal相同。也允许非亚洲语言文本行

的任意字内断开。该值适合包含一些非亚洲文本的亚洲文本 keep-all :  与所有非亚洲语言的normal相

同。对于中文,韩文,日文,不允许字断开。适合包含少量亚洲文本的非亚洲文本 语法: word-wrap : 

normal | break-word 参数: normal :  允许内容顶开指定的容器边界 break-word :  内容将在边界

内换行。如果需要,词内换行(word-break)也行发生说明:设置或检索当当前行超过指定容器的边界时

是否断开转行。

对应的脚本特性为wordWrap。请参阅我编写的其他书目。 语法: table-layout : auto | fixed 参数: 

auto :  默认的自动算法。布局将基于各单元格的内容。表格在每一单元格读取计算之后才会显示出来

。速度很慢 fixed :  固定布局的算法。在这算法中,水平布局是仅仅基于表格的宽度,表格边框的宽

度,单元格间距,列的宽度,而和表格内容无关说明:设置或检索表格的布局算法。对应的脚本特性为

tableLayout。

建议:word-break 用3C检测会显示问题的,导致百度快照也会出问题-这个属性OPERA FIREFOX 浏览器也

不支持 word-break属性可以用white-space:normal;来代替,这样在FireFox和IE下就都能正确换行,而

且要注意,单词间的空格不能用来代替,不然不能正确换行。
在网页设计中,通常会使用CSS来控制多个`div`元素的布局,使其在一行内并排显示,当容器宽度不足以容纳下所有`div`时,它们会自动换行到下一行。这种布局可以通过不同的CSS属性和布局模式来实现,其中最常用的是浮动(`float`)、内联块(`inline-block`)、弹性盒子(`flexbox`)和网格布局(`grid`)。 以下是使用这些技术实现多个`div`并排自动换行的方法: 1. 使用浮动(`float`): ```css .div-container { width: 100%; } .div-container div { width: calc(33.333% - 10px); /* 假设div之间有10px的间距 */ float: left; margin-right: 15px; box-sizing: border-box; /* 包含边框和内边距在内的宽度计算 */ } .div-container div:nth-child(3n) { margin-right: 0; /* 每三个div后不添加间距,实现换行 */ } ``` ```html <div class="div-container"> <div>Div 1</div> <div>Div 2</div> <div>Div 3</div> <!-- ...更多的div... --> </div> ``` 2. 使用内联块(`inline-block`): ```css .div-container { font-size: 0; /* 解决inline-block元素间的空白间隙问题 */ } .div-container div { display: inline-block; width: 33.333%; padding: 10px; box-sizing: border-box; } .div-container div:nth-child(3n) { margin-right: 0; } ``` 3. 使用弹性盒子(`flexbox`): ```css .div-container { display: flex; flex-wrap: wrap; } .div-container div { flex: 0 0 33.333%; box-sizing: border-box; padding: 10px; } ``` 4. 使用网格布局(`grid`): ```css .div-container { display: grid; grid-template-columns: repeat(3, 1fr); /* 三列,每列1份 */ grid-gap: 15px; /* 网格间隙 */ } .div-container div { /* grid-column: auto; 默认跨越一列 */ } ``` 这些是常见的实现`div`并排显示并自动换行的方法。具体选择哪一种,取决于你的布局需求和个人偏好。每种方法都有其适用场景和优缺点,例如`float`在现代布局中已不推荐使用,因为它会脱离文档流,可能会导致一些布局问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值