web-platform-tests / web-platform-tests/interop
HTML `<datalist>`
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 524
- Forks
- 35
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 10
Description
Description
As the web's native combobox, <input list> combined with <datalist> behaves inconsistently across browser engines and platforms. All modern browsers implement <datalist>, minus a few areas of support on Firefox, but vary in styling and behavior.
The proposed scope for this investigation:
- Popup rendering
- Styling and positioning consistency
- Desktop and mobile keyboard-suggestions displays
- Filtering behavior
- How options are filtered against
value - Case matching differences
- How options are filtered against
- Display consistency when
<option>text andvaluediffer - Affordance styling (the popup indicator icon)
- Does this follow same convention of
<select>?
- Does this follow same convention of
- Browser engine consistency
- Working as more than a text box
- Options availability in landscape mode
- Mobile landscape behavior
- A11y - roles and names as exposed to screen readers, keyboard navigation, escape behavior, and voice-control
- A11y - Page Zoom and text styling in popup
- A11y - AT inconsistencies
Rationale
Many of the identified issues are listed in Adrian Roselli's "Under-Engineered Comboboxen".
Web developer usage from State of HTML survey is very low year after year
APG provides custom combobox patterns as a good informative pattern but shouldn't be treated as normative. Extending these patterns can and does introduce new a11y issues.
Investigation Roadmap
Specification
https://html.spec.whatwg.org/multipage/form-elements.html#the-datalist-element
Web platform
https://web-platform-dx.github.io/web-features-explorer/features/datalist/
https://wpt.fyi/results/html/semantics/forms/the-datalist-element/datalistoptions.html?label=experimental&label=master&aligned&q=datalist
Test links
https://github.com/web-platform-tests/wpt/tree/master/html/semantics/forms/the-datalist-element
Adoption of <datalist> is low, according to Chrome Platform Status.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the HTML specification's datalist section and the WPT tests under html/semantics/forms/the-datalist-element, especially datalistoptions.html. Compare the documented behavior with the wpt.fyi results and the browser/platform areas listed in the investigation scope; done requires a focused set of findings or test gaps rather than a single code change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- html
- Domain
- accessibility, testing-qa, web-dev
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100