Lists are organizational tools that enhance the readability and organization of content.
{{"component": "@mui/docs/ComponentLinkHeader"}}
## Introduction
Lists present information in a concise, easy-to-follow format through a continuous, vertical index of text or images.
Joy UI Lists are implemented using a collection of related components:
- [List](#basics) - a wrapper for list items. Renders as a `
` by default.
- [List Item](#basics) - a common list item. Renders as an `
` by default.
- [List Item Button](#interactive-list-items) - an action element to be used inside a list item.
- [List Item Decorator](#decorators) - a decorator of a list item, usually used to display an icon.
- [List Item Content](#ellipsis-content) - a container inside a list item, used to display text content.
- [List Divider](#divider) - a separator between list items.
- [List Subheader](#nested-list) - a label for a nested list.
{{"demo": "ListUsage.js", "hideToolbar": true, "bg": "gradient"}}
## Basics
```jsx
import List from '@mui/joy/List';
import ListItem from '@mui/joy/ListItem';
```
## Customization
### Variants
The List component supports Joy UI's four [global variants](/joy-ui/main-features/global-variants/): `solid`, `soft`, `outlined`, and `plain`.
### Sizes
The List component comes in three sizes: `sm`, `md`, and `lg`.
The size of the List determines its font size and density.
{{"demo": "SizesList.js"}}
:::info
To learn how to add custom sizes to the component, check out [Themed components—Extend sizes](/joy-ui/customization/themed-components/#extend-sizes).
:::
### Colors
Every palette included in the theme is available via the `color` prop.
### Decorators
```jsx
import ListItemDecorator from '@mui/joy/ListItemDecorator';
```
Use the List Item Decorator component to add supporting icons or elements to the list item.
{{"demo": "DecoratedList.js"}}
:::info
The List Item Decorator comes with a minimum set width that can be adjusted using the `--list-decorator-size` CSS variable within the List component.
:::
### Horizontal list
Use the `orientation="horizontal"` prop on the List component to display the List horizontally.
{{"demo": "HorizontalList.js"}}
:::warning
While nested lists will not work in a horizontal direction, you can create a custom pop-up component to achieve a similar effect (see the [Navigation menu](#navigation-menu) example).
:::
### Semantic elements
Use the `component` prop to control which HTML tag is rendered.
```js
```
The example below renders the List component as an HTML `