You can control Popover state with
Controlled example with mouse events:
If you need to use interactive elements (inputs, buttons, etc.) inside
inline middleware to use
Popover with inline elements:
Stantler’s magnificent antlers were traded at high prices as works of art. As a result, this Pokémon was hunted close to extinction by those who were after the priceless antlers. When visiting a junkyard, you may catch sight of it having an intense fight with Murkrow over shiny objects.Ho-Oh’s feathers glow in seven colors depending on the angle at which they are struck by light. These feathers are said to bring happiness to the bearers. This Pokémon is said to live at the foot of a rainbow.
width="target" prop to make Popover dropdown take the same width as target element:
offset prop to a number to change dropdown position relative to the target element.
This way you can control dropdown offset on main axis only.
To control offset on both axis, pass object with
withArrow prop to add an arrow to the dropdown. Arrow is a
div element rotated with
arrowPosition prop determines how arrow is position relative to the target element when
position is set to
*-end values on
By default, the value is
center – the arrow is positioned in the center of the target element if it is possible.
If you change
side, then the arrow will be positioned on the side of the target element,
and you will be able to control arrow offset with
arrowOffset prop. Note that when
arrowPosition is set to
arrowOffset prop is ignored.
disabled prop to prevent
Popover.Dropdown from rendering:
Popover closes when you click outside of the dropdown. To disable this behavior, set
You can configure events that are used for click outside detection with
Popover listens to
touchstart events. You can change it to any other
events, for example,
Popover uses FocusTrap component to manage focus.
data-autofocus attribute to element that should receive initial focus:
Popover.Target requires an element or a component as a single child – strings, fragments, numbers and multiple elements/components are not supported and will throw error. Custom components must provide a prop to get root element ref, all Mantine components support ref out of the box.
Custom components that are rendered inside Popover.Target are required to support
forwardRef function to forward ref to root element:
Popover follows WAI-ARIA recommendations:
- Dropdown element has
- Target element has