我有几个<thead>
元素内的<th>
元素。第一个或其中一个是一个空的th,用作占位符并不包含任何文本。
Wave 工具显示th不能为空,并建议我更改为<td>
。
现在,如果我在<thead>
中有一个<td>
,它解决了这个问题,并通过html验证。
是否有任何理由,我不应该在<thead>
中使用<td>
?
我有几个<thead>
元素内的<th>
元素。第一个或其中一个是一个空的th,用作占位符并不包含任何文本。
Wave 工具显示th不能为空,并建议我更改为<td>
。
现在,如果我在<thead>
中有一个<td>
,它解决了这个问题,并通过html验证。
是否有任何理由,我不应该在<thead>
中使用<td>
?
从HTML的视角:
<thead>
元素允许包含 <td>
元素。 <thead>
元素可以包含零个或多个 <tr>
元素。在一个 <tr>
元素中,可以放置 <td>
和/或 <th>
元素。这并没有关系。
从WCAG的视角:
表格不能有空表头。对于屏幕阅读器用户来说,这可能非常令人困惑。有一种特殊情况:布局表格。仅用于“布局”的表格可以将空的 <td>
作为“列标题”。但是如果我正确理解您的情况,您有其他常规表格内容,因此必须为每一列添加列标题。
因此,在您的情况下,不能将空的 <td>
作为列标题。