ListItem API
The API documentation of the ListItem React component. Learn more about the props and the CSS customization points.
import { ListItem } from '@material-ui/core';
Uses an additional container component if ListItemSecondaryAction
is the last child.
Props
Name | Type | Default | Description |
---|---|---|---|
alignItems | 'flex-start' | 'center' |
'center' | Defines the align-items style property. |
autoFocus | bool | false | If true , the list item will be focused during the first mount. Focus will also be triggered if the value changes from false to true. |
button | bool | false | If true , the list item will be a button (using ButtonBase ). |
children | node | The content of the component. If a ListItemSecondaryAction is used it must be the last child. |
|
classes | object | Override or extend the styles applied to the component. See CSS API below for more details. | |
component | elementType | 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 | elementType | 'li' | The container component used when a ListItemSecondaryAction is the last child. |
ContainerProps | object | {} | Props applied to the container component if used. |
dense | bool | If true , compact vertical padding designed for keyboard and mouse input will be used. |
|
disabled | bool | false | If true , the list item will be disabled. |
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. |
selected | bool | false | Use to apply selected styling. |
The ref
is forwarded to the root element.
Any other props supplied will be provided to the root element (native element).
CSS
- Style sheet name:
MuiListItem
. - Style sheet details:
Rule name | Global class | Description |
---|---|---|
root | MuiListItem-root | Styles applied to the (normally root) component element. May be wrapped by a container . |
container | MuiListItem-container | Styles applied to the container element if children includes ListItemSecondaryAction . |
focusVisible | Mui-focusVisible | Pseudo-class applied to the component 's focusVisibleClassName prop if button={true} . |
dense | MuiListItem-dense | Styles applied to the component element if dense. |
alignItemsFlexStart | MuiListItem-alignItemsFlexStart | Styles applied to the component element if alignItems="flex-start" . |
disabled | Mui-disabled | Pseudo-class applied to the inner component element if disabled={true} . |
divider | MuiListItem-divider | Styles applied to the inner component element if divider={true} . |
gutters | MuiListItem-gutters | Styles applied to the inner component element if disableGutters={false} . |
button | MuiListItem-button | Styles applied to the inner component element if button={true} . |
secondaryAction | MuiListItem-secondaryAction | Styles applied to the component element if children includes ListItemSecondaryAction . |
selected | Mui-selected | Pseudo-class applied to the root element if selected={true} . |
You can override the style of the component thanks to one of these customization points:
- With a rule name of the
classes
object prop. - With a global class name.
- With a theme and an
overrides
property.
If that's not sufficient, you can check the implementation of the component for more detail.
Notes
The component is fully StrictMode compatible.