Skip to content

Collapsible

Show and hide a related panel of content. Use for optional details, recovery info, and progressive disclosure.

Examples

Basic

Overview

Collapsible pairs a trigger with a panel that expands and collapses. The trigger includes a chevron that rotates when open. Built on Base UI for accessible expand/collapse behavior.

tsx

import {
  Collapsible,
  CollapsibleTrigger,
  CollapsiblePanel,
} from "@standard-ui/react"

<Collapsible>
  <CollapsibleTrigger>Recovery keys</CollapsibleTrigger>
  <CollapsiblePanel>
    Store these keys somewhere safe.
  </CollapsiblePanel>
</Collapsible>

Usage

Composition

Wrap CollapsibleTrigger and CollapsiblePanel in Collapsible. Keep trigger labels short and descriptive of the hidden content.

tsx

<Collapsible defaultOpen>
  <CollapsibleTrigger>Advanced options</CollapsibleTrigger>
  <CollapsiblePanel>
    {/* optional details */}
  </CollapsiblePanel>
</Collapsible>

Open state

Use defaultOpen for uncontrolled, or open with onOpenChange when the page needs to react to expand/collapse.

tsx

<Collapsible open={open} onOpenChange={setOpen}>
  <CollapsibleTrigger>Details</CollapsibleTrigger>
  <CollapsiblePanel></CollapsiblePanel>
</Collapsible>

API

Parts mirror Base UI Collapsible. Root owns open state; trigger and panel render the control and content.

PartRole
CollapsibleRoot state and open control.
CollapsibleTriggerToggles the panel. Includes a chevron affordance.
CollapsiblePanelExpandable content region.

Collapsible

PropTypeDefaultDescription
defaultOpenbooleanfalseUncontrolled initial open state.
openbooleanControlled open state.
onOpenChange(open: boolean, event) => voidCalled when the panel opens or closes.
disabledbooleanfalseDisables the collapsible.

Guidelines

Do

  • Use for optional or secondary content that most users can skip
  • Label the trigger with what will be revealed
  • Prefer accordion when several related sections share one list

Don't

  • Don't hide required form fields behind a collapsible
  • Don't nest many collapsibles — prefer a clearer page structure
  • Don't use a collapsible for a single short sentence of text