对表格设置table-layout:fixed属性以后,如果表格的第一行tr中的td设置过单元格合并,后面tr中的td无论如何设置宽度都没有任何效果,针对这个问题有如下两种解决方法
1 在表格的第一行设置一个隐藏的行如下:
<table style="table-layout: fixed; width:100%;">
<tr style="display:none">
<td width="30%"></td>
<td width="40%"></td>
<td width="30%"></td>
</tr>
<tr>
<td colspan="3">统计表</td>
</tr>
<tr>
<td>111</td>
<td>222</td>
<td>333</td>
</tr>
</table>
2 在表格的tbody前插入col元素
<table>
<col style="width:100px"/>
<col style="width:200px"/>
<col style="width:300px"/>
<tbody>
<tr>
<td colspan="3">统计表</td>
</tr>
<tr>
<td>111</td>
<td>222</td>
<td>333</td>
</tr>
</tbody>
对于表格单元格文字过长,可以通过设置td的属性word-wrap:break-word