Menu
The Menu components provide your users with a list of options on temporary surfaces.
Menu API
Import
import Menu from '@mui/base/Menu';
// or
import { Menu } from '@mui/base';
Props
An HTML element, virtualElement, or a function that returns either. It's used to set the position of the popper.
Type:
HTML element | object | func
The props used for each slot inside the Menu.
Type:
{ listbox?: func | object, root?: func | object }
Default:
{}
The
ref
is forwarded to the root element.Slots
To learn how to customize the slot, check out the Overriding component structure guide.
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.
CSS classes
These class names are useful for styling with CSS. They are applied to the root slot when specific states are triggered.
MenuItem API
Import
import MenuItem from '@mui/base/MenuItem';
// or
import { MenuItem } from '@mui/base';
Props
Props of the native component are also available.
A text representation of the menu item's content. Used for keyboard text navigation matching.
Type:
string
The
ref
is forwarded to the root element.Slots
To learn how to customize the slot, check out the Overriding component structure guide.
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.
CSS classes
These class names are useful for styling with CSS. They are applied to the root slot when specific states are triggered.