Name Type Default Description
button bool false If true, the list item will be a button (using ButtonBase).
children node The content of the component.
classes object Override or extend the styles applied to the component. See CSS API below for more details.
component union: string |
The component used for the root node. Either a string to use a DOM element or a component. By default, it's a li when button is false and a div when button is true.
ContainerComponent union: string |
'li' The container component used when a ListItemSecondaryAction is rendered.
ContainerProps object Properties applied to the container element when the component is used to display a ListItemSecondaryAction.
dense bool false If true, compact vertical padding designed for keyboard and mouse input will be used.
disableGutters bool false If true, the left and right padding is removed.
divider bool false If true, a 1px light border is added to the bottom of the list item.

Any other properties supplied will be spread to the root element.


You can override all the class names injected by Material-UI thanks to the classes property. This property accepts the following keys:

  • root
  • container
  • focusVisible
  • default
  • dense
  • disabled
  • divider
  • gutters
  • button
  • secondaryAction

Have a look at overriding with classes section and the implementation of the component for more detail.

If using the overrides key of the theme as documented here, you need to use the following style sheet name: MuiListItem.