展开与折叠组件版本 0.1.0

Accordion 手风琴

在纵向列表中按标题展开或收起多组相关的详细内容。

使用概览

适合使用

  • 常见问题或设置分组较多,用户通常只需查看其中几项时。

不建议使用

  • 所有内容都很短且同时可见更利于比较与理解时。

真实示例

常见问题折叠组

按问题标题展开对应的答案内容。

正在加载示例…

安装

本地候选警告Registry 地址仅指向当前本地文档站;npm 包也只用于本地候选验证,尚未公开发布。
pnpm dlx shadcn@4.16.0 add http://127.0.0.1:3000/r/accordion.json

基础用法

导入

import { Accordion, AccordionItem, AccordionTrigger, AccordionContent } from "@richardqiu/quartz/accordion";

JSX

<Accordion type="single" collapsible><AccordionItem value="billing"><AccordionTrigger>如何开具发票?</AccordionTrigger><AccordionContent>在订单详情中提交发票信息。</AccordionContent></AccordionItem></Accordion>

状态与控制摘要

默认
键盘焦点可见
已禁用
已打开
已关闭
label · textactive · boolean

API 参考

属性类型默认值说明
type"single" | "multiple""single"决定同一时间允许展开一个还是多个项目。
collapsiblebooleanfalse允许单选模式下再次关闭当前展开项目。

组合结构

  1. 01Accordion
  2. 02AccordionItem
  3. 03AccordionTrigger
  4. 04AccordionContent

键盘约定

  • Enter 或空格键展开当前项;方向键、Home 与 End 在可用触发器间移动。

可访问性契约

  • 触发器与内容区域保持关联,并保留标题和按钮语义。
  • 关闭内容会离开可访问性树;减少或关闭动效时直接显示最终高度。