August 28th, 2024

A better HTML input experience (custom elements and the AOM) (2017)

The article highlights accessibility challenges with custom web elements, advocating for the HowTo: Components project and the Accessibility Object Model (AOM) to improve semantic meaning and support for assistive technologies.

Read original articleLink Icon
A better HTML input experience (custom elements and the AOM) (2017)

The article discusses the challenges and future of accessibility in custom web elements, emphasizing the importance of semantic meaning for assistive technologies like screen readers. Unlike built-in elements, custom elements lack implicit semantics and keyboard support, making it difficult for developers to ensure accessibility. The author highlights a project called HowTo: Components, which aims to educate developers on best practices for creating accessible custom elements, inspired by the ARIA Authoring Practices Guide. The article also addresses the styling limitations of built-in elements, which often lead developers to create custom controls that may not be accessible. The author advocates for the Accessibility Object Model (AOM) proposal, which would allow custom elements to define their semantics directly in the accessibility tree, simplifying the process of ensuring accessibility. The article concludes with a call to action for developers to contribute to the HowTo: Components project and to explore the potential of AOM in improving accessibility standards for custom elements.

- Custom elements lack implicit semantics and keyboard support, posing accessibility challenges.

- The HowTo: Components project aims to educate developers on creating accessible custom elements.

- The Accessibility Object Model (AOM) proposal could simplify defining semantics for custom elements.

- Developers often create custom controls due to styling limitations of built-in elements.

- The article encourages collaboration to improve accessibility standards in web development.

Link Icon 5 comments
By @personality1 - 8 months
Lion web components is a good starting point for anyone who's interested in building a UI framework that comes with a lot of these accessibility features built-in.

https://lion-web.netlify.app/

By @zazaulola - 8 months
For webmasters removing `outline` on `:focus` elements, a special cauldron in hell is prepared.
By @esprehn - 8 months
This article is from a long time ago and the spec changed substantially.

It's now all done with properties on ElementInternals:

https://developer.mozilla.org/en-US/docs/Web/API/ElementInte...

They also decided not to ship AccessibleNode's which is unfortunate because it removed the clearest path for canvas+wasm based UIs.

https://github.com/WICG/aom/blob/gh-pages/explainer.md

By @alextingle - 8 months
Having inputs look consistent between applications is a core plank of usability. Rolling your own custom widgets is just spending a lot of time and effort making the UI worse.
By @1oooqooq - 8 months
FE engineering is about making everything look like a printed pamphlet.

showing native elements is fine and safer. and browser should just plug the backdoors they found over the years to style them, since they are all technically click jacking attacks.

and all FEv will hate this comment because they don't even know what's a click jacking attack.