This survey closed on October 19, 2023. View Survey Results »

Welcome to the survey! These first couple sections are all about figuring out which features of HTML (and related APIs) you know about.

By the way, if you want to learn more about any item in the survey, you can add it to your reading list by clicking its little "+" icon!

Method of providing a list of presets for a user to select in a form control, while still allowing custom options.

html
<input name="country" list="countries">
<datalist id="countries">
  <option>Afghanistan</option>
  ...
</datalist>
Tell us more:
Tell us more:
Tell us more:

Provide hints about what kind of information is expected, e.g. name, honorific-prefix, tel, cc-number etc

html
<input name="address_firstline" autocomplete="billing street-address" />
Tell us more:
Tell us more:
Tell us more:

Capture input from the user’s camera.

html
<input type="file" accept="video/*" capture>
Tell us more:
Tell us more:
Tell us more:

Programmatically open the picker of form controls that have one (color pickers, date inputs etc).

html
<input id="dateInput" type="date">
<button onclick="dateInput.showPicker()">Select date</button>
Tell us more:
Tell us more:
Tell us more:

API to more easily extract and manipulate form data values via JS

js
let fd = new FormData(form);
let data = JSON.stringify(Object.fromEntries(fd));
Tell us more:
Tell us more:
Tell us more:

Stylable, customizable dropdown control. Previously <selectmenu>.

html
<selectlist>
	<option>Option 1</option>
	<option>Option 2</option>
	<option>Option 3</option>
</selectlist>
Tell us more:
Tell us more:
Tell us more:

Permits editing of the element's raw text, but not rich text formatting.

html
<h2 class="title" contenteditable="plaintext-only"></h2>
Tell us more:
Tell us more:
Tell us more:

Think of the various form controls (e.g. <input>, <textarea>, <select>, <button> etc.), behaviors (e.g. validation, autocomplete), handling forms via JS, editing APIs (e.g. contentEditable) etc. Anything that bothers you is fair game — browser support, missing features, styling, etc.