目前,HTML5 标准从它在文章/部分/导航等中找到的第一个标题自动创建标题/标题。我遇到的问题是为什么<caption>
不应该以与标题相同的方式对待(出于大纲的目的)。
以下面的代码为例。为了在文档大纲中有标题部分,您必须求助于它:
<table>
<caption>Results from zombie duck experiment</caption>
<h2 style="display: none;">Results from zombie duck experiment</h2>
<tr>
<td>FAILURE</td>
<td>FAILURE</td>
</tr>
</table>
(生成此大纲:http ://gsnedders.html5.org/outliner/process.py?url=http%3A%2F%2Fruncya.com%2Ftransfer%2FHTML5CaptionDocumentOutline2.htm )
我明白为什么会这样;HTMLDoctor 甚至说这是推荐的做事方式:
出于可访问性的原因,我们建议每个分段元素都有一个标题,偶数
<aside>
和<nav>
. 如果您不希望这些标题可见,您可以随时使用 CSS 隐藏它们。-- http://html5doctor.com/outlines/
当然可以,但为什么不这样呢?:
<table>
<caption>Results from zombie duck experiment</caption>
<tr>
<td>FAILURE</td>
<td>FAILURE</td>
</tr>
</table>
(这会产生这个失败的大纲:http ://gsnedders.html5.org/outliner/process.py?url=http%3A%2F%2Fruncya.com%2Ftransfer%2FHTML5CaptionDocumentOutline1.htm )
我假设 W3C 做出了有意识的决定,而我唯一的想法是:
- 表格虽然有结束标签,但并没有真正用作“包装器”,如 div、span、article、section、nav 等。所以从这个意义上说,他们没有定义“环绕部分”
- 标题是标题,标题不是标题(......这没有太多答案)
- 典型的标题不适合合适的标题(我不同意这一点)
至于第 3 点,我认为典型的标题仍然可以用作文档大纲中的标题。不管他们是在表格的顶部还是在下面。哎呀,我什至不明白为什么它会比没有更糟糕。以这些可能的标题为例 - 我认为它们都是合适的文档大纲部分标题:
- 僵尸鸭实验结果
- 图 3b
- Windows 8 区域定价
- 哪个品牌包含什么?
- 秘籍
- 颜色
- 亚伯拉罕·林肯在不同历史时期的着装
这对我来说肯定是有意义的。