Firefox 中 display为 block 时 tbody 失去宽度
来源:互联网 发布:加布.纽维尔 知乎 编辑:程序博客网 时间:2024/05/21 19:46
转自:http://blog.csdn.net/xfsnow/article/details/6050787
用 JavaScript 动态设置一个表格的显示和隐藏,先是直接设置此 table 的 display 为 block,发现整个表格宽度仍维持正常,但各表格行的边框线不能撑满了。下面示例在非 IE 浏览器中可见问题的效果。
- table.displayBlock {
- width: 90%;
- border:2px solid #999;
- display:block;
- }
- table.displayBlock td{
- border:1px solid #fcc;
- }
- <table border="0" cellpadding="0" cellspacing="0" class="displayBlock">
- <tr>
- <td>1</td>
- <td>1</td>
- <td>1</td>
- <td>1</td>
- </tr>
- <tr>
- <td>2</td>
- <td>2</td>
- <td>2</td>
- <td>2</td>
- </tr>
- <tr>
- <td>3</td>
- <td>3</td>
- <td>3</td>
- <td>3</td>
- </tr>
- </table>
原因是当 table 的 display 为 block 时,不论是否在 HTML 里显式地写了 tbody 标签,Firefox 解析出的 tbody 都不再和 table 等宽,而是适应表格行的宽度。
解决:
要使 tbody 宽度正常,必须设置 display:table。或者更通用的变通是用 JavaScript 控制表格的显示隐藏时不直接调协此 table 的 display 属性,而是给 table 包裹一层 div,然后设置该 div 的display 属性为 block 或 none。
更简单的解决:
后来看 John Resig 的《Pro JavaScript Techniques》又学了一招更简单的处理,不用给 table 外包括 div 了,只要在恢复显示时设置 display 属性为空字符串即可。如:
- elem.style.display = '';
原理是通常设为空字符串时,此元素会恢复成其原来的 display 属性值,不用再人为区分 table 还是 block 了
0 0
- Firefox 中 display为 block 时 tbody 失去宽度
- Firefox 中 display为 block 时 tbody 失去宽度
- Firefox 中 display为 block 时 tbody 失去宽度
- 火狐(firefox)中,层为空时,宽度无效问题
- css中display:inline,display:block;display:inline-block; 区别
- CSS中display:inline;display:block;display:inline-block; 区别
- 在table中tr的display:block在firefox下显示布局错乱问题
- 在table中tr的display:block在firefox下显示布局错乱问题 收藏
- 在table中tr的display:block在firefox下显示布局错乱问题
- 在table中tr的display:block在firefox下显示布局错乱问题
- 在table中tr的display:block在firefox下显示布局错乱问题
- 在table中tr的display:block在firefox下显示布局错乱问题
- 在table中tr的display:block在firefox下显示布局错乱问题
- 在table中tr的display:block在firefox,chrome下显示布局错乱问题
- 在table中tr的display:block在firefox下显示布局错乱问题
- 在table中tr的display:block在firefox,chrome下显示布局错乱问题
- 前端---CSS中display-block & display-inline
- 关于html <table>标签 中 tbody宽度撑不满
- xSwitchable 一个普通的网页元素切换Jquery插件。[Tabs | Slide | Carousel | Accordion]
- 多数人终其一生,都没把他们真正潜能的0.1%用完
- 程序阅读2
- JAVA年度安全 第六周 阻止CSRF
- Linux系统信息查看命令 -
- Firefox 中 display为 block 时 tbody 失去宽度
- Excel设置下拉框和下拉选项颜色
- jboss7.1.1.Final+MyEclipse下每次修改jsp都要重新部署项目
- ZOJ-2156
- 你说你想要逃
- 12程序阅读3
- HDU1551:Cable master(二分)
- QEMU 1.7.0 下载地址
- 如何在引号里面引用宏