table:表格设置table-layout:fixed属性后,如果表格中第一行出现合并单元格,那么后面tr中的td设置宽度无效

针对上面的问题,现在又两种解决方法:

  1 在表格的第一行设置一个隐藏的行如下:

[html]  view plain  copy
  1. <table style="table-layout: fixed; width:100%;">  
  2.     <tr style="display:none">  
  3.         <td width="30%"></td>  
  4.         <td width="40%"></td>  
  5.         <td width="30%"></td>  
  6.     </tr>  
  7.     <tr>  
  8.         <td colspan="3">统计表</td>  
  9.     </tr>  
  10.     <tr>  
  11.         <td>111</td>  
  12.         <td>222</td>  
  13.         <td>333</td>  
  14.     </tr>  
  15. </table>  

      2 在表格的tbody前插入col元素

[html]  view plain  copy
  1. <table>  
  2.     <col style="width:100px"/>  
  3.     <col style="width:200px"/>  
  4.     <col style="width:300px"/>  
  5.     <tbody>  
  6.     <tr>  
  7.         <td colspan="3">统计表</td>  
  8.     </tr>  
  9.     <tr>  
  10.         <td>111</td>  
  11.         <td>222</td>  
  12.         <td>333</td>  
  13.     </tr>  
  14.     </tbody>  

对于表格单元格文字过长,可以通过设置td的属性word-wrap:break-word


注意:

table中的宽度设置无效:

1.在table 标签添加样式 table-layout: fixed; 必须设置width的值:<table style="table-layout: fixed"><td style="width:50px;"></td></table>

2.在如果th的宽没有设置,那么在td里面添加一个节点,如果div,通过设置td里面节点的width值来达到控制td的width的值:<td><div style="width:50px;"></div></td>


猜你喜欢

转载自blog.csdn.net/weixin_38098192/article/details/80676317