What CSS means for Accessibility

December 20, 2006

Topics: Accessibility, Semantics, Web standards.

Loren Baker recently published an article by Mikhail Tuknov entitled Benefits of CSS in Search Engine Optimization. It’s a basic article describing the potential benefits of cascading style sheets in regards to SEO, maintenance, etc. General purpose CSS advocacy. In general, if you aren’t convinced that CSS is worth using, it’s probably worth reading – however, it does emphasize one fallacy which is, personally, a pet peeve.

CSS makes your website more accessible. […] By separating style from markup, webmasters can simplify and clean up the HTML in their documents, making the documents more accessible.

Mikhail Tuknov

No, it doesn’t. Cascading style sheets are a design methodology: they mean that you are separating the design of your site from the structure of your site. This can unquestionably have benefits for website accessibility, but it most certainly does not mean that your site is now accessible. Like any method, CSS can be used equally to create a high quality, standards-based website which is very accesible or a piss-poor website which is unusuable by anybody with less than perfect vision and an innate understanding of Urdu.

The separation of style from markup alone is not sufficient to be able to claim any level of accessibility at all. Use of CSS does not entitle you to claiming any form of accessibility. Semantic markup does not grant accessibility. Website accessibility is a combination of factors including semantic and valid HTML or XHTML, valid CSS, and conscientious attention to code order, positioning methods, keyboard accessibility, correct application of labels, sensitivity to color contrasts and uses and authorship of texts which do not require sight, color vision or any specialized knowledge to understand. This is no full spectrum description of accessibility – merely a light brush along the surface. To make the claim that “CSS makes your website more accessible” is such a gross simplification of the reality that it rather gets under my skin.

I feel like it’s a common misperception that learning how to program valid websites and use CSS are the main needs in learning to create accessible designs. Actually, the most important thing is to learn how people with disabilities or alternate access devices actually use the internet. Learning about disability is the most important first step, so you can comprehend the difficulties that need to be surmounted. Valid code and CSS are a path in that direction, because they make translation by multiple user agents easier – they are not, however, inherently accessible.

5 Comments to “What CSS means for Accessibility”

  1. CSS Tutorials | Allan; October 25, 2008 at 10:04 pm

    I think CSS has come a long way as far as aiding in accessibility. The less code you have to use on a page allows for more content and makes it easier for screen readers.

  2. The question, to me, is whether that change was due to the use of CSS or whether it was due to other appreciable improvements in your website which were associated with the use of CSS. CSS based websites can tend to be more efficient and more logically laid out (not always, of course).

    I question whether the CSS is what really provides the benefit; it’s the careful thought and well-planned structure that really matters.

  3. This is very interesting, a year ago I decided to change my website from table based HTML to CSS. A year on, do I think there has been any value in regards to SEO, the answer to that is most certainly yes. I would say it was the best descision I made, although at the time I was unsure as I had to redo a lot of work.

  4. Thanks, Mike!

    I just can’t help it; whenever anybody makes some over-arching statement trying to claim that method X or technology Z is what you need to make an accessible website it makes my teeth hurt…

    Merry Christmas!

  5. I’m a big fan of CSS and I agree with all the points about ease of use, maintenance, etc. And I totally agree with you, Joe, CSS does not make a site accessible in any way, shape, or form that I’m aware of. What it does do is allow one the freedom to style an already accessible site.

    The proper use of X/HTML removes the barriers that make improperly marked-up sites inaccessible. Or, worded another way: proper mark-up makes a site accessible (though the preceding sentence is actually more accurate). CSS allows that nice, cleanly marked-up site to be styled without butchering its inherent quality.

    Great article!