Accordion
A vertically stacked set of interactive headings that reveal/hide associated content panels.
Installation
npx shadcn@latest add accordionUsage
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import {
Accordion,
AccordionContent,
AccordionItem,
AccordionTrigger,
} from "@/components/ui/accordion"
export function AccordionDemo() {
return (
<Accordion type="single" collapsible className="w-full">
<AccordionItem value="item-1">
<AccordionTrigger>Is it accessible?</AccordionTrigger>
<AccordionContent>
Yes. It adheres to the WAI-ARIA design pattern.
</AccordionContent>
</AccordionItem>
<AccordionItem value="item-2">
<AccordionTrigger>Is it styled?</AccordionTrigger>
<AccordionContent>
Yes. It comes with default styles that match the other components.
</AccordionContent>
</AccordionItem>
<AccordionItem value="item-3">
<AccordionTrigger>Is it animated?</AccordionTrigger>
<AccordionContent>
Yes. It's animated by default, but you can disable it if you prefer.
</AccordionContent>
</AccordionItem>
</Accordion>
)
}Props
| Component | Props | Description |
|---|---|---|
| Accordion | AccordionPrimitive.AccordionSingleProps | AccordionPrimitive.AccordionMultipleProps | The main accordion container. Use type="single" for exclusive panels or type="multiple" to allow multiple open panels. |
| AccordionItem | AccordionPrimitive.AccordionItemProps | An accordion item containing a trigger and content. |
| AccordionTrigger | AccordionPrimitive.AccordionTriggerProps | The trigger button that toggles the accordion item. |
| AccordionContent | AccordionPrimitive.AccordionContentProps | The content shown when the accordion item is expanded. |