UnreviewedOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptionalonOptional UnreviewedkeyReact/Preact reconciliation key when rendered inside a list.
Optional UnreviewedidHTML id attribute.
Optional UnreviewedclassHTML class attribute (standard DOM).
Optional UnreviewedclassReact/Preact-style class name. Alias for class.
Optional UnreviewedstyleInline styles applied to the element.
OptionalchildrenOptional UnreviewedslotAssigns the element to a named <slot> (e.g. slot="title").
Optional UnreviewedtabTab order. Set to 0 to make the element keyboard-focusable.
Optional UnreviewedroleARIA role override.
Optional UnreviewedstateControlled visibility ('open' / 'closed'). Present → controlled: the
attribute is the source of truth, the ✕ dismiss only dispatches the cancelable
statechange event, and the consumer answers by updating it. Absent →
uncontrolled (use default-state). The <Banner> wrapper presents this as
dismissed (closed = dismissed). See STATEFUL-COMPONENTS.md.
Optional Unrevieweddefault-Initial visibility for the uncontrolled mode ('open' / 'closed'), read
once at connect. A banner is shown by default, so omit / 'open' shows it;
'closed' starts it dismissed.
Optional UnreviewedtoneSemantic tone, or any literal CSS color for a one-off custom tone. Named tones
re-point the surface + text + border color (used if you opt into a border); a
custom color keeps its hue with lightness/chroma pinned. 'neutral' is the
default (same as omitting it).
Optional UnreviewedalignPositions the content row. 'start' is the default; 'center' centers it.
Optional UnreviewedroundRounded corners for a standalone banner — border-radius: 999px (clamps to a
stadium), or a custom radius via a length value (round="12px"). Borderless
like the default. Presence-based for the boolean form.
Optional UnreviewedonstatechangeFires before visibility changes — the element dispatches a cancelable
statechange CustomEvent whose detail is { next, prev } in the
'open'|'closed' vocabulary (a dismiss is always next: 'closed').
Uncontrolled, preventDefault() vetoes the transition. All-lowercase so both
renderers bind it (React 19 keeps the case after on; Preact lowercases).
Light-DOM Banner attributes. Authors supply
a-banner-message, optional boxlessa-banner-content, onea-banner-actionsregion, anda-banner-closecontaining an accessible Button.statechangerequests dismissal; ElementInternals holds uncontrolled visibility without rewriting authored DOM.