Native HTML control behavior
Labels, grouping, defaults, disabled states and form ownership.
Connect a visible label to its input
Test explicit label association by clicking the label and checking the control it identifies.
Understand the first-legend exception in a disabled fieldset
Compare an input’s own disabled property with its effective disabled state inherited from fieldset.
Give independent radio groups different names
Keep a text-size choice and an ink choice independent by using separate radio names.
Start a required select without a chosen answer
Keep a prompt option empty so native validity distinguishes it from a real topic choice.
Put a textarea default in its text content
Separate a textarea’s original default text from its current value after editing.
Remove a boolean attribute to turn it off
Test boolean attribute presence instead of treating its written string as a true or false value.
Use datalist as suggestions rather than an allowlist
Enter a value outside the supplied suggestions and inspect what native validity actually says.
Associate a control with a form outside its container
Use form="…" to establish ownership independently of where an input appears in the DOM.
Separate task progress from a scalar measurement
Use progress for files processed and meter for a bounded sample reading, even when both ratios are 60%.