---
description: A collapsible element to toggle visibility of its content.
links:
- label: Collapsible
icon: i-custom-radix-vue
to: https://www.radix-vue.com/components/collapsible.html
- label: GitHub
icon: i-simple-icons-github
to: https://github.com/nuxt/ui/tree/v3/src/runtime/components/Collapsible.vue
---
## Usage
Use a [Button](/components/button) or any other component in the default slot of the Collapsible.
Then, use the `#content` slot to add the content displayed when the Collapsible is open.
::component-code
---
prettier: true
ignore:
- class
props:
class: 'w-48'
slots:
default: |
content: |
---
:u-button{label="Open" color="gray" variant="subtle" trailing-icon="i-heroicons-chevron-down-20-solid" block}
#content
:placeholder{class="h-48"}
::
### Disabled
Use the `disabled` prop to disable the Collapsible.
::component-code
---
prettier: true
ignore:
- class
props:
class: 'w-48'
disabled: true
slots:
default: |
content: |
---
:u-button{label="Open" color="gray" variant="subtle" trailing-icon="i-heroicons-chevron-down-20-solid" block}
#content
:placeholder{class="h-48"}
::
## Examples
### Control open state
You can control the open state by using the `default-open` prop or the `v-model:open` directive.
::component-example
---
name: 'collapsible-open-example'
---
::
::note
In this example, press :kbd{value="O"} to toggle the Collapsible.
::
::tip
This allows you to move the trigger outside of the Collapsible or remove it entirely.
::
### With rotating icon
Here is an example with a rotating icon in the Button that indicates the open state of the Collapsible.
::component-example
---
name: 'collapsible-icon-example'
---
::
## API
### Props
:component-props
### Slots
:component-slots
### Emits
:component-emits
## Theme
:component-theme