html5语义化嵌套的核心是结构反映内容逻辑:article表独立可分发内容,section表主题聚合且须有标题,div仅作无语义钩子;nav和aside需准确定位,标题层级须与dom嵌套一致,禁用非法组合。

先分清三类容器的职责边界
很多混乱源于把 section、article、div 当成同级替代品混用:
- article:表示能独立存在、可被分发的内容单元(比如一篇博客、一条新闻、一个用户评论);可嵌套自身(如评论里的回复)
-
section:表示主题相关的一组内容,必须有明确标题(
–
),不能孤立存在;它不强调“可重用性”,只强调“主题聚合”
- div:纯样式/脚本挂钩容器,无语义;当找不到更合适的语义标签时才用,不是默认首选
nav 和 aside 的嵌套位置很关键
nav 应该包裹一组导航链接,且通常位于页面顶层或某个功能区块内;它不等于“所有带链接的盒子”。aside 表示与主内容相关但可分离的补充信息(如侧边栏广告、作者简介、术语解释),它不能作为 article 或 section 的直接父容器,而应和它们并列或嵌套在更外层的
- ✅ 正确:
… - ❌ 错误:(除非 aside 内容确实专属于该 article,比如某篇教程里的“小贴士”)
- ✅ nav 可以放在 header 内,也可以独立于 header 存在(如页脚导航)
标题层级必须真实嵌套,不能靠视觉欺骗
语义化依赖标题的隐含层级(h1 > h2 > h3…),而这个层级必须和嵌套结构一致:
文章转信息图。将文章/笔记转化为手机可读的 HTML 信息图,自动匹配视觉风格。触发场景:文章转图、笔记转图、信息图、转小红书图、做张图、可视化这篇文章、文生图。
- 每个 article 或 section 应以一个标题开头,且该标题级别应符合其在整页中的语义深度
- 不要用 CSS 把 h3 样式改成“看起来像 h1”,却在 DOM 里跳过 h1/h2;屏幕阅读器只认标签,不看样式
- 同一层级的多个 section,应共享相同级别的标题(如都用 h2),而非一个 h2 一个 h3 来“凑视觉节奏”
避免常见非法嵌套组合
浏览器会自动纠错,但纠错结果不可控,也违背语义初衷:
- ❌
里直接放
、、 、 等块级元素( 只允许行内容)
- ❌ 里包裹
- ❌
- /
- 下直接写文字,不包在
- 里
- ✅ 替代方案:用 包文字再放
外,或改用
+ 标题 + 段落组合
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










