How should we build accessible components for our redesign?

Accessible components start with native browser elements, semantic structure and keyboard-friendly behaviour, then get checked across the devices, connections and ways people navigate. Build those requirements into design and development from day one, rather than trying to patch custom controls or inaccessible code after launch.

Make accessible behaviour the component default

Accessible components should use native browser elements and clear structure as their starting point, because browsers already support many inclusive interactions. A native `select` element, for example, can be reached with a keyboard without rebuilding that behaviour from scratch. Custom controls may be needed for a redesign, but they create a higher bar: the component must still work by keyboard and be recognised by screen readers.

Treat semantic HTML, keyboard accessibility, contrast and clear input behaviour as component requirements, not polish for later. A design system becomes more useful when its defaults make the accessible choice the easy choice, while still leaving room for the visual ideas that give a brand its character.

Sources: Designing and developing web experiences for everyone

Design and development need to solve access together

Accessible UX improves when designers and developers shape components together from the earliest design choices through to implementation. Early collaboration catches practical barriers before they become expensive custom fixes, from low-contrast text to controls that work with touch but not a keyboard.

Review each important component in the contexts people actually use. A website may be opened on a phone in bright sunlight, over a slow connection, with a keyboard instead of a mouse, or through a browser that reads page content aloud. Consider different devices, input methods, connectivity and browser behaviour as part of the redesign brief. Inclusion is easier to build when technical constraints inform the design, and design intent stays involved through development.

Sources: Designing and developing web experiences for everyone

Tools can speed the baseline, but they cannot replace sound foundations

Accessibility overlays and automated remediation cannot make an inaccessible component genuinely accessible when the underlying HTML and interaction design remain broken. A widget may create the appearance of a fix while leaving screen-reader compatibility, keyboard accessibility and structural barriers unresolved.

Automation and AI still have a useful role. AI code assistants can help teams create accessible patterns, and image analysis can help generate more meaningful alt text. The opportunity is to use those tools for the repeatable baseline, then keep human judgement focused on whether the experience works for people with different needs. A fully customised dropdown, for example, needs deliberate support for mouse, keyboard and voice users rather than a quick layer added at the end.

Sources: The Prompt: Using AI to create a more accessible (and dynamic) digital future

Accessibility belongs in the build, not the patch

We believe accessible components are a design and development responsibility from the first sketch onwards. The strongest redesigns do not treat inclusion as a final compliance task or a widget to install. They bring technical thinking into creative decisions early, then carry design intent through implementation.

We have put that approach into practice by involving developers from the beginning of work on This is IBM, helping shape choices around colour contrast, device behaviour and different input methods before execution created unnecessary barriers. That collaboration gives teams more clarity about what is possible, practical and inclusive. For us, accessible UX is not a constraint on good creative work. It is part of making digital experiences clearer, more useful and more human.

Sources: Designing and developing web experiences for everyone

Stats

WebAIM's 2026 analysis found an average of 56.1 distinct accessibility errors per home page across one million home pages.

WebAIM

FAQs

Should accessible components use native HTML?

Native browser elements are usually the safest foundation for accessible components because browsers already support common interaction patterns. A native `select` control, for example, can be accessed with a keyboard. When a custom component is necessary, its keyboard and screen-reader behaviour needs the same level of care as its visual design.

What should accessible component testing cover?

Accessible component testing should cover different input methods, devices, browsing conditions and access needs. Check how key journeys work with keyboard navigation, touch, screen readers, varying contrast conditions and slower connections. A component that works in one desktop setup may still create a barrier elsewhere.

Can an accessibility overlay fix inaccessible components?

An accessibility overlay cannot reliably fix inaccessible components because it does not correct the underlying structure and interaction design. Overlays typically address only a small share of WCAG failures and can create the appearance of inclusion without resolving root problems. Accessible HTML and considered component behaviour need to be built into the experience itself.

Where can AI help with accessible component development?

AI can help teams automate baseline accessibility work, such as supporting accessible code patterns and generating context-aware alt text. AI is most useful when it gives designers and developers more time for the human judgement that accessible UX requires. It should support accessible foundations, not become a shortcut around them.

Glossary

Native browser elements
Built-in HTML controls, such as selects and buttons, that browsers already understand and support with established interaction behaviour. Starting with them reduces the accessibility work that custom components must recreate.