Overview
Appearance settings
Customize your display preferences.
Dark mode
Compact view
Tooltip (hover, read-only), Popover can contain interactive elements — forms, toggles, pickers — and is triggered by click.
Popover vs Tooltip: use Popover for interactive content (buttons, inputs, forms). Use Tooltip for short read-only labels shown on hover.
Installation
Usage
Variants
Basic
Quick info
This component anchors floating content to any trigger element.
With Form
Dimensions
Placement
API Reference
Popover
boolean
Controlled open state.
(open: boolean) => void
Callback fired when open state changes.
boolean
default:"false"
Uncontrolled default open state.
PopoverContent
string
default:"bottom"
Which side of the trigger to render on. Values:
top · right · bottom · leftstring
default:"center"
Alignment relative to the trigger. Values:
start · center · endnumber
default:"4"
Distance in px between trigger and popover panel.
string
Additional class names for the popover panel.
Accessibility
- Popover uses
role="dialog"and is not modal — background content remains accessible - Trigger has
aria-haspopup="dialog"andaria-expanded - Focus moves into the popover when it opens; Escape closes it and returns focus to the trigger
- Unlike
Tooltip, Popover is not announced on hover — it requires a deliberate click
Do’s & Don’ts
Do
- Use Popover for interactive content: forms, pickers, toggles
- Keep popover content focused — avoid making it too wide or tall
- Provide a clear close mechanism (Escape key or a close button)
- Use
align="end"for popovers triggered from right-aligned buttons
Don't
- Don’t use Popover for read-only labels — use
Tooltip - Don’t use Popover for critical blocking decisions — use
AlertDialog - Don’t put navigation inside a Popover — use
DropdownMenu - Don’t make Popover content taller than the viewport