Skip to Content
ComponentsDropdown

Dropdown

A dropdown selection component for choosing one option from many. Built on Base UI Select  for keyboard navigation and screen reader accessibility.

Consider radio buttons when there are 5 or fewer options or when all options need to be visible at once.

Preview

Design

Examples

Size

Controls the dropdown size.

ValueDefaultDescription
smallFor forms in tight spaces.
medium✓General form use.
largeWhen a larger click area is needed.
Design

Rounded

Controls the corner radius of the dropdown. Each step stays visibly distinct at every size.

In the game theme, rounded steps the corners of the pixel frame instead of curving them: small is square, medium cuts a one-step notch, and large cuts a two-step corner.

ValueDefaultDescription
smallSmall corner radius
medium✓Default corner radius
largeFully rounded (pill)

Guidelines

Use Dropdown when there are many options (6 or more) or when space is limited. Use Radio when there are few options (5 or fewer) and you want all choices visible at once.

Controlled vs Uncontrolled

Use defaultValue for uncontrolled usage. Use value with onValueChange when integrating with form libraries or when the selection needs to drive other UI.

Props

Props

Prop
Default
Type
options
—
DropdownOption[]
value?
—
string
defaultValue?
—
string
onValueChange?
—
(value: string | null) => void
placeholder?
"Select an option"
string
size?
"medium"
"small" | "medium" | "large"
rounded?
"medium"
"small" | "medium" | "large"
intent?
"primary"
"primary" | "secondary" | "success" | "warning" | "danger" | "neutral"
fullWidth?
false
boolean
disabled?
false
boolean
name?
—
string
required?
—
boolean
side?
"bottom"
"top" | "bottom" | "left" | "right"
align?
"start"
"start" | "center" | "end"
sideOffset?
4
number
Last updated on