表格(table)不被撑开的解决办法

今天在做一个用户留言列表的时候,用到了表格。用户名为英文字符时,就会把固定宽度的单元格撑开。之前也有遇到过。

解决办法:先用nowrap强行令文字不换行,再用style="table-layout: fixed; word-break: break-all; border-collapse: collapse"强制表格不撑开,即达到效果。

需要注意的是:

用了nowrap的单元格设置的宽度要用百分比,不然还是会撑开。我们可以给表头的单元格设置宽度。火狐下还要在td里面嵌套一个div。
nowrap:一般用在td中禁止自动换行

table-layout:auto | fixed

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

fixed:  固定布局的算法。在这种算法中,表格和列的宽度取决于 col 对象的宽度总和,假如没有指定,则会取决于第一行每个单元格的宽度。假如表格没有指定宽度( width )属性,则表格被呈递的默认宽度为 100% 。


word-break:break-allword-wrap:break-word都是能使其容器如div、td的内容自动换行。

word-break : normal | break-all | keep-all
word-wrap : normal | break-word

它们的区别就在于:
1,word-break:break-all例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单词很长(congratulation等),它会把单词截断,变成该行末端为conra(congratulation的前端部分),下一行为tulation(conguatulation)的后端部分了。

2,word-wrap:break-word例子与上面一样,但区别就是它会把congratulation整个单词看成一个整体,如果该行末端宽度不够显示整个单词,它会自动把整个单词放到下一行,而不会把单词截断掉的。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值