当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS教程:表格不被撑开的解决办法

CSS样式表
英文教程:五种CSS选择器类型
网页缓冲效果特效代码
CSS教程:CSS让网页文字自动隐藏
利用CSS在导航条上标示当前所在频道
CSS教程:网页无序列表标记的设计
.clear方法解决网页自适应高度的问题
CSS教程(7):网页段落行间距控制的实例
CSS教程(6):实例学习CSS如何控制网页文本
CSS教程(3):通过实例学习CSS背景
CSS教程(2):通过实例学习CSS背景
制作网页使用的CSS样式表错误排查方法
CSS Hack(Safari、Opera、Firefox3和IE7)
CSS教程:vlink,alink,link和a:link
CSS标示导航条当前所在频道
CSS制作网页时遇到BUG的解决方法
CSS教程:clip属性详细讲解
div层被flash层遮盖问题解决思路
CSS教程:CSS控制网页文字排版实例
Web标准建构的站点一览表
CSS实例:vertical-align属性让网页层居中

CSS样式表 中的 CSS教程:表格不被撑开的解决办法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-09   浏览: 196 ::
收藏到网摘: n/a

今天在做一个用户留言列表的时候,用到了表格。用户名为英文字符时,就会把固定宽度的单元格撑开。之前也有遇到过。解决办法:先用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整个单词看成一个整体,如果该行末端宽度不够显示整个单词,它会自动把整个单词放到下一行,而不会把单词截断掉的。

border-collapse : separate | collapse
取值:
separate  :  默认值。边框独立(标准HTML)
collapse  :  相邻边被合并