HTML 5 文档大纲算法

r3p*_*ica 5 html semantic-markup html-heading

我正在构建一个新网站,最近开始研究文档大纲算法。它规定所有部分都应该有一个标题,部分包括sectionnavarticlebody(可能还有更多)。

所以,我有几个导航区域,我的问题是;拥有标题但将其隐藏在浏览器中是否明智?

uno*_*nor 5

每个分段内容元素都“长”一个标题元素 ( h1- h6)。但您不需要提供一份。

\n\n

如果您不\xe2\x80\x99t 为节提供标题元素,则该节将有一个隐含的标题HTML5 大纲工具可能会将这些隐含标题显示为“无标题部分”或“空标题”。

\n\n

因此,当您始终尽可能使用分段内容元素时,即使您不\xe2\x80\x99t 提供单个标题元素,您的文档大纲也将是正确的(当然不建议这样做;标题非常有用!)。

\n\n

这两个文档将具有相同的大纲层次结构:

\n\n
<!-- DOCUMENT A -->\n<body>\n  <article>\n  </article>\n  <nav>\n  </nav>\n</body>\n
Run Code Online (Sandbox Code Playgroud)\n\n
<!-- DOCUMENT B -->\n<body>\n  <h1>site title</h1>\n  <article><h1>main content title</h1></article>\n  <nav><h1>navigation title</h1></nav>\n</body>\n
Run Code Online (Sandbox Code Playgroud)\n\n
Outline for DOCUMENT A       Outline for DOCUMENT B\n1. untitled (body)           1. "site title" (body)\n  1. untitled (article)        1. "main content title" (article)\n  2. untitled (nav)            2. "navigation title" (nav)\n
Run Code Online (Sandbox Code Playgroud)\n\n
\n\n

所以\xe2\x80\x99 可以nav在没有任何标题的情况下使用。但是,如果您认为标题可能对没有 CSS 支持的消费者(例如屏幕阅读器用户或搜索引擎)有用,您可以提供标题并在视觉上隐藏它。

\n