Skip to content

Reference / Labs

Platform experiments

Emerging browser features are tried in isolated Lab fixtures behind a feature test. The native baseline stays the contract, and a supported result in one browser never promotes a feature on its own.

Content-sized form fields

Decision: lab-only. Intrinsic sizing helps short single-line values but reaches its maximum quickly in narrow containers. Stable inputs, textareas, selects, and combobox inputs stay tokenized; a later opt-in recipe may cover content-sized search fields.

Feature gate
@supports (field-sizing: content)
Baseline
Tokenized controls stay full-width with a tokenized minimum block size.
Evidence
Fixture · Browser test · Issue #202
Still missing
  • Interaction with input groups, responsive grids, and validation layouts in real products.
  • Named human sessions with browser, OS, and assistive technology, including a real OS high-contrast session.
References

Native focusgroup navigation

Decision: lab-only, no opt-in. focusgroup can replace directional focus movement but not selection, expansion, panel visibility, active descendants, or morph state. It is not added to tabs, menubar, or combobox.

Feature gate
A trusted-key probe moves focus through a temporary focusgroup="toolbar" with Arrow Right, Home, and End.
Baseline
enhanceTabs() and enhanceMenubars() keep one tab stop, arrow-key movement, selection, and focus restoration.
Evidence
Fixture · Browser test · Issue #199
Still missing
  • Stable cross-browser support outside experimental flags.
  • Native-state and lifecycle verification with the shared behaviors.
  • Named human sessions with browser, OS, and assistive technology, including a real OS high-contrast session.
References

Anchored container queries

Decision: lab-only, no opt-in. Useful for decorative awareness of which fallback position applied, but an emerging draft with incomplete cross-engine evidence. container-type: anchored stays out of layouts.css and the public API.

Feature gate
@supports (container-type: anchored)
Baseline
The data-anchored recipe with position-try fallbacks and an in-flow fallback.
Evidence
Fixture · Browser test · Issue #205
Still missing
  • Cross-engine support for anchored container queries.
  • Touch and mobile behavior.
  • Named human sessions with browser, OS, and assistive technology, including a real OS high-contrast session.
References

Animated ::details-content

Decision: lab-only. The open and close animation is presentation only and never duplicates native state with ARIA. Stable disclosure styles do not include it.

Feature gate
@supports selector(details::details-content), then (interpolate-size: allow-keywords), then (transition-behavior: allow-discrete) and (content-visibility: hidden)
Baseline
Native <details> and <summary>: authored open state, keyboard toggling, fragment targets, and print output.
Evidence
Fixture · Browser test · Issue #203
Still missing
  • Cross-engine support for interpolate-size.
  • Named human sessions with browser, OS, and assistive technology, including a real OS high-contrast session.
References

Customizable native select

Decision: lab-only. A single-value select may opt into appearance: base-select behind the gate. multiple, size, and optgroup stay native-only, and searchable-select remains the model for server filtering and multiple values.

Feature gate
@supports (appearance: base-select) and selector(::picker(select))
Baseline
The browser-owned <select>: options, groups, keyboard and pointer use, submission, reset, and validation.
Evidence
Fixture · Browser test · Issue #200
Still missing
  • Operating-system picker and assistive-technology announcements.
  • Named human sessions with browser, OS, and assistive technology, including a real OS high-contrast session.
References