我正在尝试使用不同数量的列对齐不同的表,因此前两列是对齐的,其余列是独立对齐但使用%非常困难,当调整窗口大小时,它会失去对齐。
这就是为什么我在td上尝试将混合与%和px对齐,例如
<table>
<tr>
<td width="100px"></td>
<td width="100px"></td>
<td width="50%"></td>
<td width="20%"></td>
</tr>
</table>
<table>
<tr>
<td width="100px"></td>
<td width="100px"></td>
<td width="70%"></td>
</tr>
</table>
但由于看起来并不合乎逻辑,所以它似乎不起作用。
有没有办法让这个工作或替代?
答案 0 :(得分:4)
你可以 ... 但是你希望这会做什么?大多数时候,你的桌子将有额外的空间或没有足够的空间,并赢得了'能够兑现您要求的一个或多个宽度。保留宽度未指定的列...
答案 1 :(得分:2)
您必须使用colspan属性才能执行此操作。表的设计使得存在离散的行和列,其中表中的列数等于任何行中的最大TD元素数+这些单元跨越的列数(默认值为1)。因此,您需要为表中的列找出一些基本单位,然后让单元格成为该基数的倍数。
要记住的一件事是,在其中指定较少列的任何行(单个TD列和跨越1列的TD)将从左到右填充尽可能多的列(除非rtl文本是在CSS中指定,所以你可以有不同数量的列的行,因为除非设置了colspan属性,否则TD单元不会溢出它的列(换句话说,TD必须占用整数列,而不是部分栏目)
编辑: 只处理1个表时,您只能使用我所描述的方法。要对齐2个表,请将它们包装在父元素(DIV)中,然后为两个表赋予100%的宽度。然后,您可以控制div的宽度,这将使表内部使用所有可用空间。然后问题变成你必须确保表格以相同的方式填充空间,这更容易,因为它更受控制。
答案 2 :(得分:1)
您可以混合%和px,但您必须将%视为相对于父级。如果表是500px,那么50%将是250px等。
如果表格没有指定宽度,则它会自动调整为内容宽度。如果要混音,这没有任何意义,所以至少应该指定一个表格宽度。
答案 3 :(得分:-1)
您可以使用样式属性添加width
:
td style="width:120px"