Skip to content

ExpansionPanel API

The API documentation of the ExpansionPanel React component. Learn more about the props and the CSS customization points.

import { ExpansionPanel } from '@material-ui/core';

Props

Name Type Default Description
children * node The content of the expansion panel.
classes object Override or extend the styles applied to the component. See CSS API below for more details.
defaultExpanded bool false If true, expands the panel by default.
disabled bool false If true, the panel will be displayed in a disabled state.
expanded bool If true, expands the panel, otherwise collapse it. Setting this prop enables control over the panel.
onChange func Callback fired when the expand/collapse state is changed.

Signature:
function(event: object, expanded: boolean) => void
event: The event source of the callback
expanded: The expanded state of the panel
TransitionComponent elementType Collapse The component used for the collapse effect.
TransitionProps object Props applied to the Transition element.

The ref is forwarded to the root element.

Any other props supplied will be provided to the root element (Paper).

CSS

  • Style sheet name: MuiExpansionPanel.
  • Style sheet details:
Rule name Global class Description
root MuiExpansionPanel-root Styles applied to the root element.
rounded MuiExpansionPanel-rounded Styles applied to the root element if square={false}.
expanded Mui-expanded Styles applied to the root element if expanded={true}.
disabled Mui-disabled Styles applied to the root element if disabled={true}.

You can override the style of the component thanks to one of these customization points:

If that's not sufficient, you can check the implementation of the component for more detail.

Inheritance

The props of the Paper component are also available. You can take advantage of this behavior to target nested components.

Notes

The component can cause issues in StrictMode.

Demos