Collapsible
Expandable/collapsible content panel
Accessibility
- Treat the component as presentational unless it exposes interactive affordances, and label any interactive affordances explicitly.
- Keep heading, reading, and focus order aligned with the surrounding content.
Styled quick start
Copy this entrypoint first. It includes the imports required to get the component on screen.
svelte
<script lang="ts">
import '@dryui/ui/themes/default.css';
import '@dryui/ui/themes/dark.css';
import { Collapsible } from '@dryui/ui';
</script>
<Collapsible.Root>
<Collapsible.Trigger>...</Collapsible.Trigger>
<Collapsible.Content>...</Collapsible.Content>
</Collapsible.Root> Import options
Root package
ts
import { Collapsible } from '@dryui/ui' Per-component subpath
ts
import { Collapsible } from '@dryui/ui/collapsible' API
Props, CSS variables, and the public data attributes you can target when styling.
| Prop | Type | Description | Default | Required | Bindable |
|---|---|---|---|---|---|
Collapsible.Root | |||||
| open | boolean | Whether the overlay or disclosure is currently open. | false | — | — |
| disabled | boolean | Prevents interaction and applies disabled styling. | false | — | — |
| children | Snippet | Content rendered inside the component. | — | ✓ | — |
Collapsible.Trigger | |||||
| children | Snippet | Content rendered inside the component. | — | ✓ | — |
Collapsible.Content | |||||
| children | Snippet | Content rendered inside the component. | — | ✓ | — |