RESOLVED FIXED 193382
AX: Update list heuristics to include linked lists inside navigation containers
https://bugs.webkit.org/show_bug.cgi?id=193382
Summary AX: Update list heuristics to include linked lists inside navigation containers
James Craig
Reported 2019-01-12 10:56:19 PST
AX: Update list heuristics to include linked lists inside navigation containers There were a few Twitter threads recently about the WebKit behavior to distinguish unstyled layout lists from unstyled semantic lists. Generally, I still believe WebKit is correct to heuristically suppress list-itis from screen reader users, but we can make it better for authors by continuing to update these heuristics. https://github.com/WebKit/webkit/blob/master/Source/WebCore/accessibility/AccessibilityList.cpp The first actionable suggestion that came out of the discussion was to account for link lists that are descendants (not limited to direct children) of nav elements or role=navigation. Even single-item links seem fine to me. Other suggestions were about styling (bg colors, etc.) like WebKit has for the data tables, but I didn't see anything actionable in that category yet. If I do, I'll file it as a separate bug tracker and try to link it here.
Attachments
patch (4.75 KB, patch)
2020-12-15 15:17 PST, chris fleizach
no flags
patch (4.75 KB, patch)
2020-12-15 20:09 PST, chris fleizach
no flags
Radar WebKit Bug Importer
Comment 1 2019-01-12 10:56:36 PST
chris fleizach
Comment 2 2019-01-12 13:37:32 PST
I agree that WebKit has correct behavior. If we were able to just create solutions knowing we had authors who used semantics and ARIA correctly then things would be easy. But in the real world, we need to focus on user needs, in this case it means doing something to make lists meaningful.
James Craig
Comment 3 2020-12-14 09:38:54 PST
The request to "allow list" ULs inside NAV has come up again recently. It seems like a reasonable change that would appease many web developers.
James Craig
Comment 4 2020-12-14 10:40:04 PST
Could be allowing all lists inside nav: An unstyled list: <ul style="list-style:none"><!-- Still a list --> …that is inside any nav: <nav> or <el role="navigation"> …with or without other elements in between (e.g. descendant lists... not limited to direct children) <nav> <div><!-- in-betweeners okay --> <ul style="list-style:none"> If that results in some false positives, it could be limited to link lists inside navs. <nav> <div><!-- in-betweeners okay --> <ul style="list-style:none"> <li><a href="https://www.apple.com/">Apple</a></li> <!-- only link lists? --> <li><a href="https://www.webkit.org/">WebKit</a></li> </ul> </div> </nav>
chris fleizach
Comment 5 2020-12-15 15:17:23 PST
chris fleizach
Comment 6 2020-12-15 20:09:46 PST
EWS
Comment 7 2020-12-16 10:24:00 PST
Committed r270896: <https://trac.webkit.org/changeset/270896> All reviewed patches have been landed. Closing bug and clearing flags on attachment 416313 [details].
Note You need to log in before you can comment on or make changes to this bug.