aside 可嵌套在 article 内部,但不能作为其容器;它必须与主文直接相关、可移除且不破坏逻辑,语义依附于父级元素,脱离上下文则失效。

aside 不能作为 article 的容器,但可以嵌套在 article 内部——前提是它所承载的内容与该文章直接相关、可分离且不破坏主文逻辑。
aside 必须依附于有明确上下文的父级元素
aside 本身没有独立语义,它的意义来自所处位置。放在 article 里,就表示“服务于这篇文章的附属信息”;放在 section 里,就表示“服务于这个主题分组的补充内容”;放在 body 级别,则代表整页通用的辅助模块(如全站作者栏、联系方式)。脱离上下文单独使用 aside,语义就失效了。
- ✅ 正确:
<article><h2>量子纠缠简介</h2><p>……</p><aside><p>薛定谔于1935年提出该思想实验</p></aside></article> - ❌ 错误:
<aside><article>…</article></aside>(aside 不是容器型标签,不能包裹独立内容单元)
嵌套在 article 中的 aside 要满足“可移除性”
删掉它,文章主体仍完整、连贯、可独立传播。它不是过渡句,也不是承上启下的段落,而是能被抽出来重用的信息块,比如术语解释、人物小传、数据来源说明、引用出处或延伸阅读提示。
- 适合放:一段 3 行以内的作者背景、一个带出处的公式说明、文中提到的某项政策原文节选
- 不适合放:全文摘要、核心论点复述、分步骤操作指南(这些属于主内容,应放在 article 主体内)
多个 aside 可共存,但需区分作用域
一篇文章中可以有不止一个 aside,只要各自服务不同片段。例如:开头放一个作者简介 aside,中间插一个概念释义 aside,文末加一个推荐阅读 aside。它们彼此不嵌套,都平级位于 article 内部,靠位置和内容表明服务对象。
立即学习“前端免费学习笔记(深入)”;
- 不要把一个 aside 套进另一个 aside
- 如果两个 aside 逻辑上属于同一类(如全是术语解释),建议合并为一个,并用 heading 或列表组织内部结构
视觉位置 ≠ 语义层级,但要保持一致性
aside 放在 article 结尾、侧边或文中某段后,不影响其语义合法性——只要 DOM 结构上它是 article 的子元素。但若 CSS 把它渲染到远离原文的位置(比如浮动到页面顶部),需确保屏幕阅读器仍能按源顺序理解其归属。必要时可用 aria-labelledby 显式绑定标题关联。
- 推荐做法:文末推荐阅读模块直接写在 </article> 前
- 谨慎做法:用 CSS 定位到右侧侧栏时,加上
aria-label="本文推荐阅读"



















