NavigationMenu

Site navigation bar with links and dropdown flyout panels

Category: navigation · WCAG 2.2-AA · navigation, menu, flyout, site-nav

States

Props

PropTypeDefaultDescription
labelstringAlias of `ariaLabel` — the same invisible accessible name under the other spelling. Neither is deprecated.
ariaLabelstringInvisible accessible name. The catalog convention; `aria-label` is accepted as an alias for the DOM spelling.
itemsNavigationMenuItem[]The items to render.
aria-labelstringAccessible label used when no visible label is present.
orientation'horizontal' | 'vertical' | 'both'horizontalWhich arrow keys move focus, and the axis the items lay out on: `horizontal` (Left/Right), `vertical` (Up/Down), or `both` (all four).
classNamestringAdditional CSS class names merged onto the root element.

Design tokens

When to use

When not to use

How to build an accessible NavigationMenu in React →

Examples

Basic

<NavigationMenu aria-label="Main" items={[{ id: "home", label: "Home", href: "/" }, { id: "products", label: "Products", content: <ul>…</ul> }]} />

Related components

← Back to docs