Toggle Sidebar B
AppearanceLight & dark mode D

Navigation Menu

Horizontal navigation with hover-triggered mega-menu panels. Best for marketing-site headers where each top-level item reveals a grid of categorised links.

Default

Triggers reveal panels of titled links: a simple list, a two-column grid, and a compact list with icons. The last item is a plain link styled like a trigger.

Replay preview

Without viewport

Set viewport to false and each item renders its own panel in place instead of sharing one animated viewport under the menu.

Replay preview

API Reference

NavigationMenu

PropTypeDefaultDescription
modelValuestringOpen menu item value. Supports v-model.
delayDurationnumber200Hover-open delay in ms.
viewportbooleantrueRender panels in one shared animated viewport below the menu. Set false to render each panel in place under its own item.
EventDescription
update:modelValueFires when the active panel changes.

NavigationMenuItem / NavigationMenuTrigger

PropTypeDefaultDescription
valuestring(NavigationMenuItem) Identifier matched against modelValue. Trigger opens its panel.

NavigationMenuContent

PropTypeDefaultDescription
classstringThe mega-menu panel. Forwards interaction props to reka-ui NavigationMenuContent.

NavigationMenuLink

PropTypeDefaultDescription
asChildbooleanfalseRender into a child element such as NuxtLink.
activebooleanfalseMark the link as the current page.
EventDescription
selectFires when the link is chosen; closes the menu.

NavigationMenuViewport

PropTypeDefaultDescription
classstringThe shared animated panel container. Rendered automatically when NavigationMenu has viewport (the default); omit it when viewport is false.

Accessibility

Keyboard shortcuts and ARIA behavior.

Shortcut Description
TabMoves focus to the next trigger or link.
Shift + TabMoves focus to the previous trigger or link.
EnterOpens the panel for the focused trigger.
SpaceOpens the panel for the focused trigger.
Moves focus within an open content panel.
EscCloses the open panel.
  • Panels open on hover or keyboard focus of their trigger.
  • Links inside a panel are normal tab stops rather than a roving-tabindex menu.