header 是语义化容器,不参与跳转逻辑;应统一包裹站点标识、主导航等全局内容,每页仅一个且位于 body 或 main 直接子级,动态更新状态而非替换结构,确保辅助技术和 SEO 依赖的结构稳定性。

header 标签本身不参与页面跳转逻辑,它只是语义化容器,保持语义一致性靠的是结构设计和使用规范,而非跳转行为。
header 应始终包裹页面顶部的全局性内容
无论用户从哪一页跳转过来,header 内应统一包含站点标识、主导航、登录状态等跨页面一致的信息。例如:首页、文章页、用户中心页的 header 都该有相同的 logo 和主导航栏,即使当前页面无需某项功能(如“编辑”按钮),也不应移除整个导航结构,而用 CSS 控制显隐或语义化禁用。
避免在不同页面中混用 header 与其它语义标签
不能因为某页是单页应用(SPA)就用 div 替代 header,也不能在内容页里把副标题栏误标为 header。每个页面的顶级 header 只能有一个,且必须位于 main 或 body 的直接子级(或符合 ARIA landmark 规则),确保屏幕阅读器和搜索引擎始终识别为“页面头部”。
跳转后需重置 header 内的动态状态,而非替换结构
- 点击导航跳转时,不要销毁并重建整个 header 元素,而是复用 DOM 节点,仅更新其中可变部分(如用户名、通知徽标)
- 若使用 JavaScript 动态渲染,确保新内容仍符合 header 的语义范围——比如不塞入正文段落或侧边栏组件
- 服务端渲染(SSR)或静态生成页面时,各路由模板中的 header 应共享同一套 HTML 片段,避免语义漂移
辅助技术与 SEO 依赖的是结构稳定性
搜索引擎和读屏软件不会“记住”上一页的 header,它们只解析当前文档。所谓“一致性”,是指所有页面都严格遵循:用 header 包裹导航与品牌信息、不嵌套 main 或 footer、不用于页面内局部区块。只要每页都这样写,跳转前后语义自然连贯,无需额外处理。


















