Zazz Design Framework
Components

Navigation menu

Mega-menu navigation using popover panels, nested submenus, and anchor positioning.

The navigation menu is rooted on a semantic <nav class="ui-navigation-menu"> (class form only, since the native element carries the meaning) and combines button triggers (popovertarget) with [data-slot="navigation-menu-popover"] panels. [data-slot="navigation-menu-list"] contains items and triggers. Panels contain a [data-slot="navigation-menu-viewport"] grid of [data-slot="navigation-menu-link"] items and optional [data-slot="navigation-menu-submenu"] flyouts.

Default

Loading components…

Hover open

Add interestfor alongside popovertarget (same panel id) on any trigger to open its panel on hover, focus, or long-press. This uses the Interest Invokers API. Clicking still works, and the popover auto stack closes the previous panel as the next opens.

Loading components…

A common content-site layout: link rows beside a featured card, arranged with grid utilities inside the viewport.

Loading components…

Icon grid

Tiles of icon, title, and description, each wrapped as a navigation-menu-link laid out with flex utilities.

Loading components…

Megamenu

A full-width panel using data-size="container" to size the popover to the whole menu bar via anchor-size(), holding columns of link groups with eyebrow labels.

Loading components…

Rule of thumb: use a Menu when a nav item is a flat list of links, and a navigation-menu panel when it requires grid or multi-column layout. A <ui-menu> works as a nav item (reset --ui-popover-inline-size on its panel so wide navigation sizing does not inherit into it), and a .ui-input[type="search"] fits at the end of the bar. For full site search palettes, see Command.

Loading components…

API

AttributeTargetValues
popovertargetTriggerID of target panel
interestforTriggerSame ID: adds hover/focus open (optional)
data-align[data-slot="navigation-menu-popover"]center, end
data-variant[data-slot="navigation-menu-popover"]submenu
data-size[data-slot="navigation-menu-popover"]root, container, screen
data-animation[data-slot="navigation-menu-popover"]slide-down

On this page