COMPONENT 56 · Overlays & Disclosure
手风琴
Accordion
也叫Accordion ViewExpansion Panels折叠面板组
由多个标题组成,每个标题可展开或收起对应内容区。
A set of headings that expand or collapse their associated content panels.
ANATOMY & USAGE
结构与使用建议
组成部分
- 标题按钮
- 展开图标
- 内容面板
适合使用
- 长页面有多个平级区块,用户通常只关注少数时。
不建议使用
- 用户需要同时比较所有区块或内容很短时。
键盘与无障碍
- 标题使用 button,维护 aria-expanded/aria-controls;标题层级正确且内容仍在合理阅读顺序中。
DESCRIBE IT TO AI
这样告诉编程助手
实现手风琴(Accordion):由多个标题组成,每个标题可展开或收起对应内容区。
MINIMAL RUNNABLE CODE
可复制代码
原生与 React 两套实现,不依赖第三方组件库。
READ ONLY · SAFE TO COPY
<section class="demo stack" aria-label="常见问题">
<details open>
<summary>什么是 Slider?</summary>
<p>一种在连续范围内选择数值的控件。</p>
</details>
<details>
<summary>可以键盘操作吗?</summary>
<p>可以,焦点位于标题时按 Enter 或空格。</p>
</details>
<details>
<summary>何时使用?</summary>
<p>当范围有明确上下界,且用户更关心相对值时使用。</p>
</details>
</section>