等大小的表格单元格,以填充保持表的整个宽度

yog*_*ear 91 html css html-table

有没有办法使用HTML/CSS(具有相对大小)来使一行单元格拉伸包含它的表的整个宽度?

单元格应该是相等的宽度,外部表格大小也是动态的<table width="100%">.

目前,如果我没有指定固定的大小; 细胞只是自动调整以适应其内容.

Sim*_*mon 141

您甚至不必为细胞设置特定的宽度,table-layout: fixed足以均匀地扩散细胞.看看这个jsfiddle,在IE8上测试过.

请注意,table-layout要工作,表样式元素必须设置宽度(在我的示例中为100%).

  • 这个解决方案更好,甚至可以使用动态生成的列 (11认同)
  • 正如我刚刚发现的那样,添加`word-wrap:break-word`将解决这个问题 (5认同)

cle*_*tus 112

只需使用百分比宽度和固定表格布局:

<table>
<tr>
  <td>1</td>
  <td>2</td>
  <td>3</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)

table { table-layout: fixed; }
td { width: 33%; }
Run Code Online (Sandbox Code Playgroud)

固定的表格布局很重要,否则如果内容不合适,浏览器将根据其认为合适的宽度进行调整,否则宽度不是没有固定表格布局的建议.

显然,调整CSS以适应您的情况,这通常意味着仅将样式应用于具有给定类或可能具有给定ID的表.

  • 你不需要设置`td`的宽度,因为你可能有动态的列数...而且没有它可以工作. (2认同)

Sha*_*ank 5

使用table-layout: fixed作为用于属性tablewidth: calc(100%/3);td假设有3td)。设置这两个属性后,表格单元格的大小将相等

请参阅演示

  • 你不需要它们两个,单独的任何一个解决方案就足够了。 (3认同)