跳至正文

Accordion

基于原生details元素的一组可折叠区块。

浏览器
Chrome 123+Firefox 121+Safari 17.5+
层级
0
压缩后大小
511 B
强制布局预算
0 ms
axe 预算
0
支持 SSR
是
基于
elements/details
公开契约
测试环境

交互示例

Accordion

Single

配送
2–3天内发货。
退货
30-day return window.

Multiple

配送
2–3天内发货。
退货
30-day return window.

API

Accordion

属性类型默认值说明
id*string—确定性id的基础值,用于在无context的情况下连接summary与面板。
items*readonly AccordionItem[]—每项为{ value, label, panel?, disabled? }。
type"single" | "multiple""single"允许同时打开一个还是多个项目。
defaultValuestring | readonly string[] | undefined—首次渲染时打开的项目。非受控,因此无JavaScript时仍可保持。
classNamestring—应用于折叠面板根元素的类名。

键盘

按键操作
Enter / Space切换区块
Tab在触发器之间移动

无障碍

原生<details>/<summary>堆叠结构。无须JS即可读取展开状态。

样式钩子

data-state