HTML表格半列

3

我已经制作了一个HTML表格,但当我完成后发现有一行有5列,而其他所有行都只有3列。是否可以通过将2列调整为半列宽或仅使用HTML自动调整来修复它?我不想使用colspan,因为这是一个相当大的表格。

<table border="1">
  <tr>
    <td>something</td>
  </tr>
  <tr>
    <td>these should be</td>
    <td>as long as the others</td>
  </tr>
  <tr>
    <td> something </td>
  </tr>
</table>


1
你想让第一行跨越两列还是让右下角的单元格跨越两行?我不太清楚你想要什么。 - j08691
我希望第二行与第一行一样长,而不是在第一行使用colspan。其中一列应该比第一行中的列小一半。我希望你明白我的意思。 - user3657850
@user3657850 清晰的解释可能有助于我们理解问题。 - cuSK
我不明白为什么你不使用 colspan,它就是为此而存在的。表格的大小有什么关系呢? - gfullam
3个回答

3

嵌套表格

如果您绝对不想使用colspan,您可以尝试嵌套一个表格:

<table border="1">
  <tr>
    <td>something</td>
  </tr>
  <tr>
    <td>
        <table border="1">
             <tr>
                 <td>these should be</td>
                 <td>as long as the others</td>
             </tr>
        </table>
    </td>
  </tr>
  <tr>
    <td> something </td>
  </tr>
</table>


1
就此而言:我对这个答案感到不安,但它可以在没有“colspan”的情况下实现类似的结果。 - gfullam
谢谢!我没有想到这个。这是最好的解决方案,因为我太懒了,不想添加100个colspan。 - user3657850

2

定义 colspan 可能解决您的问题。

  • colspan 必须基于具有最大列的行进行指定。
  • 它实际上用于根据您的意愿扩展2个或更多列。
  • 它还极大地取决于底层列。
<table border="1">
    <tr>
        <td colspan="2">Something</td>
    </tr>
    <tr>
        <td>these should be<td>
        <td>as long as the others</td>
    </tr>
    <tr>
        <td colspan="2">Something</td>
    </tr>
</table>

这应该可以解决你的问题。

编辑: 由于您需要在不使用 colspan 的情况下跨度,因此可以使用嵌套表格。

<table border="1">
    <tr>
        <td colspan="2">Something</td>
    </tr>
    <tr>
        <td>
            <table border="0"> <!-- if you want border set it to 1 -->
                <tr>
                    <td>this should be</td>
                    <td>as long as the others</td>
                </tr>
            </table>
        </td>
    </tr>
    <tr>
        <td colspan="2">Something</td>
    </tr>
</table>

上述方法有些棘手。对于这个示例,使用以上代码片段很容易实现。但是对于您确切的解决方案,由于您需要将其用于具有5列的行。

将5列合并为1列,并将其跨度扩展到3列:(如下所示实现)

<tr>
    <td colspan="3">
        <table border="0"> <!-- if you want border set it to 1 -->
            <tr>
                <td>col 1</td>
                <td>col 2</td>
                <td>col 3</td>
                <td>col 4</td>
                <td>col 5</td>
            </tr>
        </table>
    </td>
</tr>

我不想因为这一行而在其他100个元素上使用colspan。 - user3657850

0

我不想因为这一行的原因在其他100个元素上使用colspan。 - user3657850
1
也许你不应该使用<table>。 - BastienSander

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接