必须且只能出现一次,因其是搜索引擎定位页面唯一核心内容的锚点,多用或嵌套在中会导致降权;缺标题等同,仅限主导航,需iso 8601格式。

搜索引擎不解析 class 名,只认原生标签的语义角色。用错或不用语义化标签,等于主动把内容结构藏起来。
为什么 <main></main> 必须且只能出现一次
Google 和 Bing 都把 <main></main> 当作页面“唯一核心内容”的锚点:RSS 抓取、分享卡片预览、Google News 入口都依赖它定位正文。如果页面里有多个 <main></main>,或它被包在 <section></section>、<article></article> 甚至 <div class="container"> 里,爬虫会直接降权处理——认为结构混乱、可信度低。
<p>常见错误包括:</p>
<ul>
<li>用 <code><main></main> 包裹整个页面布局(含 header / nav / footer)
<main></main>(如每个子组件都加一个)<main></main> 放在 <article></article> 内部(<article></article> 本身已是独立内容单元,二者语义冲突)
<section></section> 没标题就等于 <div>
<p>W3C 明确规定:<code><section></section> 必须有 <h2></h2>–<h6></h6> 级标题,否则不构成逻辑分组,也不会进入文档大纲(outline)。没有大纲,Google 就无法生成结构化摘要,也难以判断“技术原理”“使用示例”这些区块的权重分布。
正确写法示例:
<section><h3>兼容性说明</h3> <p>Chrome 102+、Firefox 110+ 支持该 API。</p> </section>
错误写法示例:
<section class="grid-cols-3"><div>…</div> <div>…</div> </section>
这类纯布局用途的 <section></section> 应该换回 <div>。
<h3>
<code><nav></nav> 只能用于主导航,不是所有链接集合
搜索引擎通过 <nav></nav> 识别网站关键路径。把它用在页脚次级链接、文章内“相关阅读”、或者弹窗里的操作按钮组,反而会稀释主站导航信号,导致内链权重分散。
判断标准很简单:
- 用户首次打开页面时,是否需要靠它快速跳转到其他核心栏目?
- 这个链接集合是否出现在多数页面(如首页、列表页、详情页)的相同位置?
- 它是否承载了网站的信息架构主干?
如果不是,就别用 <nav></nav> —— 用 <div> 或 <code><aside></aside> 更合适。
<time datetime="2026-05-01"></time> 的格式不能错
时间语义只有在 datetime 属性符合 ISO 8601(如 "2026-05-01"、"2026-05-01T14:30:00Z")时才生效。写成 "2026/05/01"、"5月1日" 或空值,Google 会忽略该节点的时间属性,影响内容时效性判断——尤其对新闻、教程、版本更新类页面,这点很关键。
另外注意:<time></time> 不是装饰性标签,必须包裹可读文本,例如:
<time datetime="2026-08-25">今天</time>
而不是仅靠属性“藏”时间。
最常被忽略的其实是嵌套层级:<header></header> 不能包在 <div class="wrapper"> 里,<code><nav></nav> 不能塞进 <footer></footer>,否则语义链就断了——机器读得懂标签名,但读不懂你“绕着弯”写的结构。











