关于语义的问题。如果我有一个基本上是一个大表的HTML页面,那么我使用什么元素作为标题?正确的表格标题
通常,您将页面标题使用h1
,对表格标题使用caption
。但是如果表格是页面上唯一的东西呢?包括两个看起来有点傻。所以我使用h1
而忘记caption
,反之亦然?
有关于此的正式(W3C或WHATWG)建议吗?如果是这样,我找不到它们。
PS为了这个问题,我们假设表格填充了表格数据,OK。
关于语义的问题。如果我有一个基本上是一个大表的HTML页面,那么我使用什么元素作为标题?正确的表格标题
通常,您将页面标题使用h1
,对表格标题使用caption
。但是如果表格是页面上唯一的东西呢?包括两个看起来有点傻。所以我使用h1
而忘记caption
,反之亦然?
有关于此的正式(W3C或WHATWG)建议吗?如果是这样,我找不到它们。
PS为了这个问题,我们假设表格填充了表格数据,OK。
在这种情况下,还没有真正的标准。你最好选择看起来更好,感觉更适合页面的。就像你说的那样,看起来很傻,所以只需使用一个更好的。即便如此,您仍然可以在CSS中自定义h1
或caption
的外观,因此它不是最终所有类型的交易。
元素倾向于用于某些事情,有些确实有一定的用途,但是像h1
这样的视觉事物没有标准化。
一个表标题可以包含自由格式的内容。您可以在caption
元素中包含该表格的描述,为标题元素留下标题,而且看起来并不傻。
的spec为caption
元素包含一个例子:
在抽象的,该表是不明确的。然而,一个标题给表的编号(在主散文参考),解释它的使用,它更有意义:
<caption> <p>Table 1. <p>This table shows the total score obtained from rolling two six-sided dice. The first row represents the value of the first die, the first column the value of the second die. The total is given in the cell that corresponds to the values of the two dice. </caption>
如果表是不言自明,你可以离开了标题,但我仍然建议有一个文档级的标题。标题是文档大纲的关键部分,而caption
不起作用(特别是,即使它代表文档标题,title
元素也不起作用。尽管无论如何都不存在大纲的真实世界实现,但您不能错过拥有文档级标题。
我认为一个问题应该总是如何最终呈现给屏幕阅读器用户。
似乎the caption
element gets exposed by some platform accessibility APIs in a special way(例如,在IAccessible2 API为IA2_ROLE_CAPTION
与IA2_RELATION_LABEL_FOR
中),但不是在所有的人(例如,苹果公司的AX API似乎并没有做任何事情,所以特别用它)。
在比较中,我认为h1
and all other headings always get exposed with a heading
role。屏幕阅读器始终以一种方式公开所有标题,以便于在文档中进行导航。
所以我想也许是因为屏幕阅读器用户,caption
和h1
之间:在问题描述,如果文档中的将有一个,而不是其他方面,它可能是最好的,它是h1
。
它看起来不是真正的问题。您可以轻松制作[看起来像h1的标题](https://jsfiddle.net/MrLister/12ef8qq2/)或[反之亦然](https://jsfiddle.net/MrLister/12ef8qq2/2/)。我在问语义。 –