Re: Why are nested tables that bad

On Monday, January 13, 2003, at 12:00  PM, Charles McCathieNevile wrote:
> I don't think nested tables are inherently an accessibility problem 
> any more, if they linearise correctly. At some level it becomes 
> difficult to navigate the complex structure in a system that actually 
> provides full access to tables (linearisation is a nasty hack that 
> loses important information encoded in data tables), but this is 
> generally not that relevant for layout tables.
>
> It isn't elegant programming/design style, and I wouldn't like to pay 
> people for introducing the complexity in my site, but it might not be 
> any problem for accessibility at all.

I agree that for the most part, nested tables alone are not de facto 
inaccessible. Really, a very large chunk of the Web nests tables as a 
matter of course, since many sites are designed around tables for 
common designs such as navigational sidebars, and so on.

But at the same time, elegant programming and design is key to making 
existing sites more accessible; it would follow that poorly-designed 
sites which use nested tables are usually substantially harder to 
modify or redesign, and that includes making changes to enhance 
accessibility. It is, as you suggest, a greater problem of design, but 
sooner or later it does trickle down and become an accessibility 
problem.

Nested tables throughout a site are a red flag that design teams are 
stuck in a rut of outmoded markup practices. Most of the layout tables 
I've seen can be done with CSS, for example. Those facilities have been 
available to authors for several years now. People who view source 
regularly see similar signs of obsolete design tactics (use of the 
<font> element hundreds of times in a document is also still 
frighteningly common). We've seen these telltale signs of bad design 
decisions for years now as we in accessibility review sites for 
conformance, and so it's become common to say one shouldn't do this or 
that as a matter of practice.

The key principle here is that before one endeavors to break the rules, 
one should know why the rules existed in the first place. Assistive 
technologies have had to get better at handling complex tables, and do 
well, but they may not do what you expect of them, and you shouldn't 
rely on them to do what could simply be done with proper layout.

If nested tables linearize properly, that's a happy accident. Properly 
coded and styled HTML works this way by design.

-
m

Received on Monday, 13 January 2003 17:34:44 UTC