For years, web developers have had to choose between **native form controls** (good accessibility, limited styling) and **custom controls** (highly stylable, often fragile accessibility). A new CSS-Tricks article explores the emerging “customizable select” capability shipping in **Chromium-based browsers**, and demonstrates how far the feature can be pushed for UI creativity.

## What’s changing

The new model allows developers to opt into deeper styling of a native `<select>` and its dropdown using the `::picker(select)` pseudo-element and `appearance: base-select`. The article highlights related hooks such as `select::picker-icon` and `option::checkmark`, plus new CSS capabilities like `@starting-style` and `sibling-index()` for per-option styling and animations.

## Demos that show the potential

CSS-Tricks walks through multiple playful examples, including:

- A **curved stack of folders** picker

- A **fanned deck of cards** picker

- A **radial emoji picker** concept

These examples keep the semantics of a real `<select>` while radically changing the visuals — an important point for keyboard support and screen reader compatibility.

## The catch: browser support

At the time of writing, the article notes these demos only work in **recent Chromium-based browsers**. Non-supporting browsers fall back to standard selects, which is a reasonable progressive enhancement path.

## Why it matters for product teams

If this approach matures across browsers, it could reduce the need for heavy custom dropdown libraries and enable more consistent, accessible UI with fewer JavaScript dependencies. For teams focused on performance and accessibility, that’s a big deal — but it’s still early, and cross-browser strategy remains essential.

## Recommendations

- Use it as **progressive enhancement**: ensure a usable baseline select exists everywhere.

- Test keyboard and screen reader flows; don’t assume styling changes preserve accessibility automatically.

- Track spec and implementation changes, as APIs like `sibling-index()` may evolve.