div 自动换行 层内容过多怎么办

本文介绍了CSS中的word-wrap和word-break属性,详细解释了它们在不同情况下的使用方法及效果对比,如避免文本溢出容器边界,保持单词完整性等。

word-wrap : normal | break-word

参数:

normal : 允许内容顶开指定的容器边界
break-word : 内容将在边界内换行。如果需要,词内换行(word-break)也行发生

word-wrap:break-word; 这个样式在我的项目经验中,在购物网站中商品参数介绍的时候用到,前提是一定要给所在的层设宽度,否则是没用滴。

名称、颜色、价格这些参数并不是手动去排的,而是通过这个样式去排的,效果也非常不错。

 

以下内容来自百度知道。

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下就都能正确换行,而且要注意,单词间的空格不能用 来代替,不然不能正确换行。

word-wrap:break-word;

word-break:break-all;

(word-wrap)英语句子中单词内不强制换行。(word-break)如果需要词内换行。

 

 


 

在 CSS 中,当文字内容超出 `div` 宽度时,默认情况下不会自动换行,这会导致布局溢出或显示异常。为了解决这一问题,可以通过以下几种方式实现文字在超出宽度时自动换行,确保内容在限定区域内显示。 ### 使用 `word-wrap: break-word` `word-wrap: break-word` 是一种常见的解决方案,它允许长单词或 URL 地址在超出容器宽度时自动换行。该属性适用于中英文混合内容,能够有效避免内容溢出。 ```html <div style="width: 200px; word-wrap: break-word;"> aabbfjdlkfldsjfldsjfldjfljdlafjldsjflkdjflkdsjfldfjdlj </div> ``` 此方式确保即使内容为连续无空格的长字符串,也会在容器边缘自动换行 [^3]。 ### 使用 `white-space: pre-line` 或 `white-space: pre-wrap` 若希望保留原始文本中的空格和换行符,同时允许自动换行,可以使用 `white-space: pre-line` 或 `white-space: pre-wrap`。两者区别在于 `pre-line` 会合并空白符并允许断行,而 `pre-wrap` 则保留空白符并允许断行。 ```css .node-label { white-space: pre-line; } ``` 这种方式适用于节点标签、关系图等需要保留换行逻辑的场景 [^1]。 ### 使用 `word-break: break-all` `word-break: break-all` 强制在任意字符间断行,适用于中文内容较少、英文单词较长的场景。它会将超出宽度的单词截断,避免单个单词占据过多宽度。 ```html <dd style="width:70%; word-break:break-all; overflow: hidden;"> {{this.tabdata.goId}} </dd> ``` 该方式适用于内容中包含超长英文字段的情况 [^2]。 ### 结合 `overflow: hidden` 控制溢出 若不希望内容换行,而是限制在固定宽高内,可以通过 `overflow: hidden` 实现内容截断。 ```html <div style="width:100px; height:100px; overflow:hidden;"> 11111111111111111111111111 </div> ``` 此方式适用于需要严格控制内容展示区域的场景 [^1]。 ### 总结 通过 `word-wrap: break-word`、`word-break: break-all`、`white-space: pre-line` 等 CSS 属性,可以灵活控制文字在超出 `div` 宽度时的行为,确保内容在限定区域内正确显示,避免布局溢出问题。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值