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

CSS样式表
Flash页面如何通过校验
静态页面加密
如何禁止打印页面
比较不错的打印效果 css
!important在ie7.0的hack方法
最基本的几种 CSS 文字滤镜效果
HTML中的图象标签属性
marquee的详细用法解析
使用#default#userdata组件实现的可记忆内容的编辑器
li的简单应用(将前面的点换成图标)
windows的listview一样,而且不能把表头从表格里面独立出来
一些不标准的东西,不过还是有点用处
用js控制css的不错的方法
CSS解决未知高度垂直居中
在线ASC码查询
关于CSS:优先级
文字或图片元素在DIV中垂直居中
Mozilla建议的CSS书写顺序
微软终于对网页三剑客下手了
div+css布局入门

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-09   浏览: 191 ::
收藏到网摘: 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  :  相邻边被合并