Misunderstanding web standards
With every new website project undertaken both at work and at home, I find myself becoming more thorough about web standards, and as a knock-on effect, more frustrated at how poorly some designers are following standards-based practice. But there’s something else as well: Some people are misunderstanding what ‘web standards’ actually means. A conversation I had with a friend this morning highlighted some of the key issues of standards-based web design, as well as the misunderstanding surrounding them. To summarise, the main focus of my response was that said friend had mistakenly thought that I had claimed CSS was the key to accessibility. He cited a BBC programme that studied web accessibility and stated that CSS hadn’t come out on top.
Yes, it’s absolutely right that they should not mention CSS – it plays no part whatsoever in a site’s accessibility.
The prime thing above everything else you can do to make a site accessible is to have clean, semantic markup: structuring a document with proper hierarchy (using the appropriate h1s, h2s, lis, etc.), regardless of where elements will physically appear on the screen once the styling is introduced; giving semantically meaningful IDs and classes; and (something I’m really into at the moment) using things like dl / dt / dd elements where appropriate, instead of plain text with span wraps or – even worse – tables. This is something very few people do.
The upside of doing all this stuff, aside from it being the most important part of site accessibility hands down, is that it’s also the most important thing you can do to make a site Search Engine Optimised. So two birds with one stone!
But CSS plays no part in this whatsoever. CSS simply allows us the freedom we never used to have to write markup that is completely devoid of presentational elements. So the BBC were right.
However, I would argue that it’s unlikely someone is going to have an understanding of all of the above if they have no understanding of CSS, as they are effectively still in the Dark Ages world of font tags, tables, and markup littered with presentation-related code.
If there is a myth out there about CSS ‘future-proofing’ a site, I’m certainly not a believer of it: CSS demonstrates how changeable sites can be (CSS Zen Garden being the perfect example), so in fact the opposite is true: if there’s any ‘future-proofing’ to be done, it’s in the mark-up, not the style.