OverflowMenu

Kebab icon button revealing a menu of row-level actions

Category: overlay · WCAG 2.2-AA · overlay, menu, actions, kebab, table

Sizes

States

Props

PropTypeDefaultDescription
items{ label: string; value: string; icon?: ReactNode; disabled?: boolean; destructive?: boolean }[]The items to render.
onSelect(value: string) => voidCalled with the selected value.
placement'bottom-start' | 'bottom-end'bottom-endPlacement relative to the trigger.
ariaLabelstringMore actionsAccessible label for the component.
size'sm' | 'md'mdVisual size of the component (e.g. 'sm', 'md', 'lg').
disabledbooleanfalseWhen true, disables the control and removes it from the tab order.
classNamestringAdditional CSS class names merged onto the root element.

Design tokens

When to use

When not to use

How to build an accessible OverflowMenu in React →

Examples

Row actions

<OverflowMenu items={[{ label: "Edit", value: "edit" }, { label: "Delete", value: "delete", destructive: true }]} onSelect={handle} />

Small, start-aligned

<OverflowMenu size="sm" placement="bottom-start" items={items} />

Related components

← Back to docs