How do cascading style sheets affect web accessibility?

DO-IT Factsheet #1142

Cascading Style Sheets (CSS) is a web markup language, developed by the World Wide Web Consortium (W3C). CSS accompanies HTML and gives both developers and users more control over how pages are displayed. CSS allows web developers to separate the appearance of a page (CSS) from its structure and informational content (HTML). This is a good idea since users access content using a wide variety of devices and media. The presentation of a document should therefore not be the same for everyone, but content and structure should be. People with disabilities benefit from this approach because they gain more control over how web pages are displayed or presented.

For example, users with low vision can create their own large-font, high-contrast style sheet and tell the browser to override web pages' existing style sheets with the style sheet that accommodates their needs and reflects their preferences. More information is available in the W3C document Accessibility Features of CSS [1]. There are currently two versions of CSS—CSS1 and CSS2. The latter version, issued by the W3C in May 1998, has tremendous potential for improving accessibility in that it allows for media-specific style sheets, such as aural style sheets and style sheets for nonstandard devices.

Given these accessibility benefits, use of CSS to control the presentation of web content is strongly encouraged. In the W3C's Web Content Accessibility Guidelines (WCAG) 1.0 [2], Checkpoint 3.3 says "Use style sheets to control layout and presentation". The corresponding checkpoint in WCAG 2.0 [3], which is currently a working draft, is Guideline 1.3, which says "Ensure that information, functionality, and structure are separable from presentation".

WCAG 1.0 has been the source of some confusion on this topic, since it recommends using style sheets as noted above, but it simultaneously seems to discourage using style sheets. Checkpoint 6.1 says, "Organize documents so they may be read without style sheets. For example, when an HTML document is rendered without associated style sheets, it must still be possible to read the document." This checkpoint should not be misinterpreted as discouraging CSS. Rather, the idea is to use CSS without your site becoming CSS-dependent. Since users have the ability to override the author's specified style sheet, the web content may look very different for these users. Also, users accessing the page with older browsers, text-only browsers, handheld computers, wireless phones, or other technologies that might not support CSS should still be able to access the content.