JAWS has a weird way of recognising data tables
Screen readers have some quirks and odd behaviours, and one that is quite hard to understand is how JAWS determines whether a table is a layout or data table. From Jared Smith’s JAWS ate my tables:
However, JAWS does not consider table headers or any other markup commonly used in data tables to determine the table type.
Instead, JAWS assumes the presence of a data table if it has at least 2 rows and 2 columns AND at least 4 cells in the table are between 200 and 16000 square pixels in size.
Say what? Like Jared says, the presence of a th
element makes it virtually guaranteed that the table is a data table. Likewise if the table has a caption
element or contains scope
or headers
attributes.
Sure, there will always be exceptions to the rule, but I have seen very, very few instances of those elements and attributes being used in a layout table.