Choose native HTML controls before custom ARIA when the native element already carries the interaction contract.
The first accessibility decision is usually an element choice, not an ARIA attribute. Native elements carry contracts A native control exposes semantics and behavior through the browser. A button knows how to focus, activate, submit, disable, and identify itself. A label knows how to connect text to a form control. A heading knows how to participate in document structure. When you use these elements correctly, browsers and assistive technologies can do work you do not have to write. Custom controls create debt A custom widget can be accessible, but only if the team rebuilds the whole contract: name, role, state,…
Sign up free — one personalized lesson every day, matched to your role and goals.
Already have an account? Sign in