Split Button
A button group that pairs a one-click default action with a dropdown menu of related alternatives. Best for when users typically want one action but occasionally need variants.
Composition
Compose the parts of a SplitButton together to build your own:
Size
Set the size prop on SplitButton.Root to control the height of the whole composite, default md. The size applies to both the primary action and the menu trigger so the two halves always share one height; the parts themselves do not accept a size prop. The scale is shared with Button and IconButton.
Polymorphism
When you want to render something else as a SplitButton.MenuItem, you can use the asChild prop to compose. This is useful for rendering links as menu items.
API Reference
SplitButton.Root
A button group that pairs a one-click default action with a dropdown menu of related alternatives.
All props from div, plus:
Data attributes
SplitButton.PrimaryAction
The most common action users can trigger with a single click. Renders as a Button with appearance="outlined" and intent="neutral".
All props from Button, except appearance, intent, and size (set size on SplitButton.Root instead).
SplitButton.MenuTrigger
The button that opens the split button dropdown menu. Renders as an IconButton with a caret-down icon that rotates when the menu is open.
All props from IconButton, except appearance, intent, size (set size on SplitButton.Root instead), asChild, and icon (which is redefined as optional below).
SplitButton.MenuContent
The container for the split button dropdown menu content. Appears in a portal with scrolling and animations. Wraps DropdownMenu.Content.
All props from DropdownMenu.Content.
SplitButton.MenuItem
A standard item in the split button dropdown menu that can be selected or activated. Wraps DropdownMenu.Item with gap-2 styling.
All props from DropdownMenu.Item.