HTML表格:空单元格的语义

HTML表格:空单元格的语义,html,html-table,semantic-markup,w3c-validation,Html,Html Table,Semantic Markup,W3c Validation,我不经常使用表格,但当我得到一些表格数据时,它会放在表格中。但我想知道除了使用空细胞外,是否还有更好或更合适的方法来排列细胞 例如,我正在使用一个签出表,该表在一行中列出每个产品、价格等,并根据需要添加任意多的行。最后是标准的sub、shipping和total字段 现在他们希望最后一部分都在右边,这是我遇到的一个非常标准的设置。不是每个人都是这样,但我已经看到了。所以我并不反对,但我能看到的唯一方法是添加大量空单元格以获得正确的对齐 <tr> <td><!

我不经常使用表格,但当我得到一些表格数据时,它会放在表格中。但我想知道除了使用空细胞外,是否还有更好或更合适的方法来排列细胞

例如,我正在使用一个签出表,该表在一行中列出每个产品、价格等,并根据需要添加任意多的行。最后是标准的sub、shipping和total字段

现在他们希望最后一部分都在右边,这是我遇到的一个非常标准的设置。不是每个人都是这样,但我已经看到了。所以我并不反对,但我能看到的唯一方法是添加大量空单元格以获得正确的对齐

<tr>
    <td><!--This cell should be empty--></td>
    <td><!--This cell should be empty--></td>
    <td><!--This cell should be empty--></td>
    <td><!--This cell should be empty--></td>
    <td><!--This cell should be empty--></td>
    <td>Sub-Total</td>
</tr>
<tr>
    <td><!--This cell should be empty--></td>
    <td><!--This cell should be empty--></td>
    <td><!--This cell should be empty--></td>
    <td><!--This cell should be empty--></td>
    <td><!--This cell should be empty--></td>
    <td>Total</td>
</tr>

小计
全部的
因为我通常都会非常仔细地理解语义,所以我觉得这样做不对。好像我错过了什么。但在其他领域,有些单元格没有填充,因为没有特定的数据放在那里,也就是说,如果一种产品有选择,而其他产品没有。所以它不会错,因为这些字段必须是空的。所以我被抓住了,不知道这是对的、错的、观点还是什么。

你可以使用这个属性。您可能希望将该列中的文本与CSS右对齐:

<tr>
    <td colspan="6">Sub-Total</td>
</tr>
<tr>
    <td colspan="6">Total</td>
</tr>

小计
全部的

最好的方法可能是设置colspan=“#”这些行跨度的列数,然后设置align=“right”

将空单元格与
colspan
组合,并将单元格与值分开。列标题(
)指向了错误的单元格,因为所有组合的单元格都被分配到使用了
colspan
的第一列。

可以使用
而不是5个空单元格。然后,您可以将包含小计或总计的单元格作为普通单元格。这使您可以单独处理该单元的对齐,而不是将其视为跨越多个列

空单元格可能会导致渲染中出现一些问题(出于这个原因,您可能希望使用
作为内容和/或CSS规则),但逻辑在这里几乎不是问题

但是,对于最后一行的最后一列中包含一些总和(不清楚这是否是您需要的),最好在那里进行一些解释,例如:

<tr>
   <td colspan="5">Total</td>
   <td>$42,000,000</td>
</tr>

全部的
$42,000,000

这正是我的意思。谢谢我确实记得colspan,但自从很久以前上大学的第一堂HTML课以来,我就没有使用过表。如今,当数据需要在表中显示时,我只需要让后端按照他们想要的方式生成数据。另外,我使用这些注释是为了让人们知道我希望它们是空的,因为它用内容呈现它们,而不是折叠空单元格。我想这就是你们在非休息空间的意思。完全忘记了科尔斯潘和罗斯潘。你可以猜到我多久用一次桌子。我几乎总是让后端生成它们。谢谢。你确实需要右对齐(标签或CSS),否则它会尴尬地坐在左边(除非你的网站是阿拉伯语或希伯来语等)