Collapse API
Demos
For examples and details on the usage of this React component, visit the component demo pages:
Import
import Collapse from '@mui/material/Collapse';
// or
import { Collapse } from '@mui/material';
The Collapse transition is used by the Vertical Stepper StepContent component. It uses react-transition-group internally.
Component name
The nameMuiCollapse
can be used when providing default props or style overrides in the theme.Props
Props of the Transition component are also available.
Name | Type | Default | Description |
---|---|---|---|
addEndListener | func | Add a custom transition end trigger. Called with the transitioning DOM node and a done callback. Allows for more fine grained transition end logic. Note: Timeouts are still used as a fallback if provided. | |
children | node | The content node to be collapsed. | |
classes | object | Override or extend the styles applied to the component. See CSS API below for more details. | |
collapsedSize | number | string | '0px' | The width (horizontal) or height (vertical) of the container when collapsed. |
component | element type | The component used for the root node. Either a string to use a HTML element or a component. ⚠️ Needs to be able to hold a ref. | |
easing | { enter?: string, exit?: string } | string | The transition timing function. You may specify a single easing or a object containing enter and exit values. | |
in | bool | If true , the component will transition in. | |
orientation | 'horizontal' | 'vertical' | 'vertical' | The transition orientation. |
sx | Array<func | object | bool> | func | object | The system prop that allows defining system overrides as well as additional CSS styles. See the `sx` page for more details. | |
timeout | 'auto' | number | { appear?: number, enter?: number, exit?: number } | duration.standard | The duration for the transition, in milliseconds. You may specify a single timeout for all transitions, or individually with an object. Set to 'auto' to automatically calculate transition time based on height. |
The
ref
is forwarded to the root element.Inheritance
While not explicitly documented above, the props of the Transition component from react-transition-group are also available on Collapse. You can take advantage of this to target nested components.CSS
Rule name | Global class | Description |
---|---|---|
root | .MuiCollapse-root | Styles applied to the root element. |
horizontal | .MuiCollapse-horizontal | State class applied to the root element if orientation="horizontal" . |
entered | .MuiCollapse-entered | Styles applied to the root element when the transition has entered. |
hidden | .MuiCollapse-hidden | Styles applied to the root element when the transition has exited and collapsedSize = 0px. |
wrapper | .MuiCollapse-wrapper | Styles applied to the outer wrapper element. |
wrapperInner | .MuiCollapse-wrapperInner | Styles applied to the inner wrapper element. |
You can override the style of the component using one of these customization options:
- With a global class name.
- With a rule name as part of the component's
styleOverrides
property in a custom theme.