手机
当前位置:查字典教程网 >网页设计 > Div+Css教程 >表格设置table-layout:fixed后对单元格宽度设置无效
表格设置table-layout:fixed后对单元格宽度设置无效
摘要:在对设置表格设置table-layer:fixed样式后,发现表格中有一行合并过,其它没有合并的行的列宽会平均化,对列宽的设置会失效。如果把...

在对设置表格设置table-layer:fixed样式后,发现表格中有一行合并过,其它没有合并的行的列宽会平均化,对列宽的设置会失效。如果把表格的合并行去掉,又能正常显示。

原因:table-layout: fixed 的表格,各列宽度由第一行决定,后面指定的宽度会被忽略。你第一行合并了,所以各列宽度均分了。

解决方法一:

在tbody前加

<col />

<col />

<col />

解决方法二:

设置一个隐藏的行来规定宽度:

<table border="1" cellspacing="1" cellpadding="1">

<tr>

<td></td>

<td></td>

<td></td>

</tr>

<tr>

<td>1</td>

<td colspan="2">2</td>

</tr>

<tr>

<td>1.1</td>

<td>2.1</td>

<td>2.2</td>

</tr>

</table>

这个方法,在IE6,IE7,IE8中都可以正确地显示,但在非IE中,是没起作用的。下面给出另外一种方法:

<style>

td{border:1px solid red;}

</style>

<table border="0" cellspacing="1" cellpadding="1">

<tr>

<th></th>

<th></th>

<th></th>

</tr>

<tr>

<td>1</td>

<td colspan="2">2</td>

</tr>

<tr>

<td>1.1</td>

<td>2.1</td>

<td>2.2</td>

</tr>

</table>

【表格设置table-layout:fixed后对单元格宽度设置无效】相关文章:

CSS布局教程:绝对定位和相对定位

CSS的ul和li实现横向排列和去掉li的点

CSS实现Table单元格自动换行或不换行

CSS学习中的瓶颈

IE6定义1px左右高度的容器示例代码

CSS网页布局时常犯的几种小错误

解答何谓DIV+CSS

用CSS实现表单form布局

指尖上的技术活儿:菜鸟HTML+CSS指北

Ext.grid.GridPanel单元格特殊设置

精品推荐
分类导航