Intent to Prototype: "Customizable Select"

522 views
Skip to first unread message

Keith Cirkel

unread,
Jan 6, 2026, 9:36:06 AMJan 6
to dev-pl...@mozilla.org
Summary:
  Prototype out the various extensions to select elements, including:
  - The `<selectedcontent>` element.
  - Relaxing of the parser restrictions & content model for `<select>` elements.
  - Defining `appearance: base-select`, and implementing the UA Stylesheet and ShadowDOM changes relating to this new mode.
  - Defining new pseudo elements such as `::picker(select)`, `::picker-icon` & `::checkmark`.
  - New ARIA mappings.

Bug:

Specification:
  Various specifications include this work:

Standards Body:
  W3C (WHATWG, CSSWG, ARIAWG)

Platform coverage:
  all.

Preference:
  A variety of feature flags will be implemented so that each facet can be independently verified and/or shipped, including:
  - dom.lift-select-parser-restrictions.enabled (for the new parser/content model changes)
  - dom.selectedcontent.enabled (for the new `<selectecontent>` element)
  - layout.css.select-pseudo-elements.enabled (for the new pseudo elements)

DevTools bug:
  N/A

Link to standards-positions discussion:
  https://github.com/mozilla/standards-positions/issues/1086 for relaxing of the parser; positive.
  

Other browsers:
  Blink: Positive, shipping.
  WebKit: Supportive.

web-platform-tests:

Myself and other members of the DOM Core team at Mozilla will be prototyping out these features, which collectively have been called "Customizable Select". There is a large body of work here, and so we may work on (or enable in nightly) individual parts (such as lifting the parser restrictions) while ensuring web compatibility is maintained.

Nicolas Chevobbe

unread,
Jan 13, 2026, 4:00:14 AMJan 13
to dev-pl...@mozilla.org, moz...@keithcirkel.co.uk
That's great to hear, really looking forward being able to do more with selects :)
I filed https://bugzilla.mozilla.org/show_bug.cgi?id=2009906 for DevTools support, as we need to make sure those new pseudo elements are showing up in the rules view, and possibly in the markup view
Reply all
Reply to author
Forward
0 new messages