logoalt Hacker News

gamplemanlast Tuesday at 10:27 AM5 repliesview on HN

Is this really true? Messaging like this will cause a lot of developers to just give up. Most places I've worked at did accessibility at best as a best effort sort of thing. After reading this, there will be no attempts made to improve the state of affairs.

Perhaps that will be an improvement? I don't know.


Replies

robin_realalast Tuesday at 12:15 PM

Let’s give a concrete and catastrophic example of something I’ve seen in the wild in a professional product. A developer there had obviously seen the application role[1] in the ARIA specs, thought “I’m building a web app”, and added it to their html element.

What role="application" means to assistive tech is: “I’m building a really complex application, so I’m going to handle absolutely everything for you, I don’t want you to have any default behaviour.” This meant that the web app in question was 100% unusable for any people using assistive technology, as that was broadly as far as they’d got with accessibility support.

[1] https://developer.mozilla.org/en-US/docs/Web/Accessibility/A...

show 2 replies
austin-cheneylast Tuesday at 10:48 AM

ARIA is often a compensating technology more than a primary solution. I try to not use ARIA in my own code aside from the role attribute. I instead rely on the clear navigation and order HTML content and events as my primary solutions.

show 1 reply
askewlast Tuesday at 10:37 AM

The statement is about encouraging folks to use the platform: `<button>Hello!</button>` over `<div role=button tabindex=0>Hello</div>`

nabla9last Tuesday at 11:04 AM

It is true. This is not messaging. They are not selling you ARIA.

If you are developer, just write semantically clear HTML instead. Just doing something is worse than doing nothing in accessibility.

pickpucklast Tuesday at 11:54 AM

This adage has been "the first rule of ARIA" since the beginning.

There are a few ARIA "widgets" that have no HTML equivalent, such as Tabs or a spreadsheet-like Grid. Those are heavily documented so you can basically copy and paste whenever you need them.

Avoiding sprinkling ARIA on already-semantic HTML, because this can lead to confusing or inconsistent behaviors for the end user.