Re: role="list", Safari and VoiceOver

Hi  Bernat,

A few thoughts: first, the arrogance of Apple is well documented, and this
is not the only example of their tools not supporting web standards
properly. The hubris of their decision policies is extremely frustrating.

While I understand the desire to have "error-free" HTML, I think there are
a few bullet points here to go back to your powers-that-be to discuss:

a) due to a bug in Apple's product, their tool is not meeting the expected
standard. Applying the fix, while not technically conformant, addresses the
real need and gap that users experience.

(Perhaps also remembering the design principle that drove the development
of HTML 5 may help here: the priority of constituents
<https://www.w3.org/TR/html-design-principles/#priority-of-constituencies> then
was summed up as: "In case of conflict, consider users over authors over
implementors over specifiers over theoretical purity'".) Here, I would
argue that knowing the rules, and the impact on breaking the rules, should
be the final arbiter, and specifically adding that role - even though the
validator is squawking - is the better choice for the accessible
user-experience. Choose users over theoretical purity!

b) It may also be worth remembering that back when ARIA was first
introduced, the ARIA spec itself was 'vetted' and approved by the W3C, yet
if/when you added ARIA attributes to a valid HTML 4.1 document back then,
the validator complained that the resulting code was invalid. But as an
informed developer, I knew that if my HTML 4.1 code was valid without the
ARIA attributes, that adding those attributes really wasn't creating harm,
and in fact was making things EVEN BETTER.

So, really, the agency where you work sort of need to choose between two
objectives: error-free HTML, or optimized accessibility for all users on
all platforms/user-agents. (For me it's a no-contest decision, but I
appreciate that it may not be that way everywhere).

HTH

JF

On Fri, Apr 29, 2022 at 11:33 AM Peter Weil <peter.weil@wisc.edu> wrote:

> Bernat,
>
> For what it’s worth, I use role=“list” in these situations, and
> respectfully disagree with the reasons given by the Safari team to change
> the semantics. See
> https://developer.mozilla.org/en-US/docs/Web/CSS/list-style for a more
> complete explanation. I would ignore the validator warning. If you want the
> list semantics to be there in Safari, then it *is* necessary.
>
> I’ll let someone else answer the other question.
>
> Peter
>
> > On Apr 27, 2022, at 3:43 AM, Bernat Lleonart <bernat.lleonart@proton.me>
> wrote:
> >
> > Hi,
> >
> > Some time ago I came across this blog post:
> https://www.scottohara.me/blog/2019/01/12/lists-and-safari.html and this
> tweet: https://twitter.com/rogerjohansson/status/1083600157076324352
> >
> > Since then I'm adding role="list" to the lists that have list-style:
> none applied.
> >
> > However, the w3c validator show a warning: "The list role is unnecessary
> for element ul."
> >
> > In the web design agency I'm working I'm asked to produce error/warning
> free html code.
> >
> > So my questions are:
> >
> >       • Which CSS properties/values remove list semantics apart from
> list-style: none? For example: does display: flex remove list semantics?
> >       • What's your approach around this issue? Do you use role="list"
> on lists with list-style: none?
> >       • Since O'Hara's post is from 2019, I wonder if VoiceOver/Safari
> approach is still the same.
> >
> > Thanks.
> >
> > --
> > Bernat Lleonart
> >
> > Enviat amb h ProtonMail correu segur.
>
>
>
> --
> Peter Weil
> Web Developer
> University Marketing, University of Wisconsin–Madison
> 608-220-3089
>
>
>

-- 
*John Foliot* |
Senior Industry Specialist, Digital Accessibility |
W3C Accessibility Standards Contributor |

"I made this so long because I did not have time to make it shorter." -
Pascal "links go places, buttons do things"

Received on Friday, 29 April 2022 16:23:45 UTC