Accessible label for the rendered card. When set, the card becomes a labeled landmark for assistive tech. Recommended to set this for any chrome that represents a meaningful region (e.g. "Filter users").
ARIA role applied to the rendered card. Defaults to 'search' since the
dominant use case is a filter / search region. Pass null to omit the
role attribute (for non-filter chrome — e.g. a settings-only action band).
Optional one-line description rendered under Title (or alone, if Title is not set). Recommended for pages whose purpose isn't obvious from the rail label — e.g. Dev Tools inspectors. Keep it short — one line at typical widths.
Optional short page name rendered as the identity block on the left of the card. Usually redundant with the parent shell's left-rail label, so most sub-pages omit this and rely on Subtitle alone.
<mj-page-header-interior>— Interior-chrome sibling of<mj-page-header>.Same slot conventions as
<mj-page-header>([meta]/[actions]/[toolbar]) so consumers learn one set of names for both surfaces. Different visual shape: a single-row card with surface background + radius + shadow that sits at the top of a sub-page's body, NOT a page-level chrome band.Use this when a sub-page renders inside a left-nav shell that already owns the page-level
<mj-page-header>— the rail's active-item highlight is the section indicator, so the sub-page doesn't need its own title row; just the filter / action surface in a clean card.Layout
Two-row card. The primary row has an identity column on the left (Title → Subtitle → Meta, stacked) and an actions cluster on the right; the toolbar row holds dense controls (search, tab nav, filter chips) that would compete with the title for space if they shared a row. When
[toolbar]has no projected content, the row collapses entirely.[Title](input, optional) — short page name. Usually redundant with the parent shell's left-rail label; most sub-pages still set it as a visual anchor.[Subtitle](input, optional) — short prose explaining what the page does. Recommended for pages that aren't self-explanatory from the rail label alone (e.g. Dev Tools inspectors).[meta]— below the subtitle, inside the identity column: status badges, result counts, stat pills. Reads as supporting info for the identity (not a peer of the title), so the title stays the dominant visual anchor. Wraps to multiple lines when there are many badges.[toolbar]— second row: search, tab nav, filter chips, view toggles[actions]— top row, right edge: filter popover, refresh, secondary buttons, primary CTAExample
See Section 10 of
plans/explorer-chrome-conventions.mdfor the full "interior chrome" contract.