AnchorNav
A page outline that follows the section in view.
Live — this one is real
Introduction
Navigation follows the document.
Details
Every item is a native fragment link.
Usage
import { AnchorNav } from "mizu-ui";
export function Example() {
return (
<div>
<AnchorNav
items={[
{ id: "anchor-intro", label: "Introduction" },
{ id: "anchor-details", label: "Details" },
]}
/>
<section id="anchor-intro">
<h3>Introduction</h3>
<p>Navigation follows the document.</p>
</section>
<section id="anchor-details">
<h3>Details</h3>
<p>Every item is a native fragment link.</p>
</section>
</div>
);
}
Source & setup
Import mizu-ui/styles.css once. Fonts are optional via mizu-ui/fonts.css. Override --mizu-* tokens or use className for local styling. Uses native React and CSS; install the package peers for root imports.
Inspect navigation/Navigation.tsx
Source is included in the npm package under src/navigation/Navigation.tsx.
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| items | {id: string; label: string}[] | — | Existing document section ids. |
| label | string | — | Landmark name. |
Accessibility
Native fragment links work without an observer. IntersectionObserver marks the visible location and disconnects on unmount.
Motion
Native scrolling; respects the document's scrolling settings.