Required fields (clear required + clear errors)

A short, practical UI accessibility note for games and web UIs. No tracking.

Try the micro-demo: required-fields-demo.html

It compares “asterisk/color-only required” (BAD) vs explicit required text + accessible error associations (BETTER).

What goes wrong

Checklist (minimal, safe)

Minimal field wiring (concept):

<label for="email">Email (required)</label>
<input id="email" type="email" required
       aria-describedby="emailHelp emailErr" aria-invalid="true" />
<div id="emailHelp">We’ll only use this for account recovery.</div>
<div id="emailErr">Enter your email.</div>

Tie help + error text to the field with aria-describedby. Only set aria-invalid when invalid.

Common pitfalls