This is split out from the master accessibility thread: Accessibility audit and shepherd for making improvements
Mary and Rich think this is more important. If there are inner and outer tables, they’d all need semantic labels and all need to be linked.
This appears to have changed since Rich’s audit on 3/30/17. If I remember right, the issue was that the “latest posts” column, a table was used for the layout of each post. On 1/10/18, running Array.prototype.slice.call(document.querySelectorAll(“table”)) on Categories - Discourse Meta looks good.
I tried looking back at git history for code related to the topics list to see where this might have changed in the last six months but couldn’t find it. If @sam or other folks can help confirm that there were nested tables previously or find this in GitHub that would be awesome and make sense of this too.
I’ve pinged back Rich to verify that the accessibility here is good now. If @tapper82 or other folks looking at screen reader tests can confirm this looks good we could close it too.
Hi I took a look at the latest posts on the LEDE forum and yes the table
that is used is workable with a screen reader.
I can use the Control + Alt and the up + down arrow keys to jump from
link to link. Thanks.
Awesome, thanks @tapper82! Let’s consider this resolved then
FWIW, here was the original report from March 2017:
The main part of the categories page contains two tables:
first one is ok: columns categories and topics
second one is nested structure:
outer one contains just one column labeled "latest"
each row consists of a nested 3-column table with no column headers
This makes little semantic sense, and makes the table difficult to read via screen reader.
Nested tables are fine (discouraged, but fine), as long as they are coded properly. In this case, however, each inner table has only one row of cells, so would seem to me that using 1 3-column table (with proper th cells marking up column headers) would make more semantic sense, and would be far easier to read via screen reader.
To re-iterate, this appears to have been addressed at some point between March 2017 and January 2018, and we can still consider this resolved.