I've evaluated a lot of Drupal 6 themes for basic validation at this point. There were 20 Drupal Themes which validated for xHTML 1.0 Strict and also for CSS 2.1. There were two warnings which seemed to hit almost all of the tested themes:
Within the Navigation Bars Best Practices we got an warning on each theme tested because "each ol or ul element that appears to be a navigation bar or menu should be immediately preceded by a header element (h2..h6)."
There may be an issue in styling the images as 22 of of the themes came back with a warning to "avoid using img elements for stylistic purposes such as separator bars or list bullets; use CSS instead." Based on the image dimensions none seemed to be for bullets or separator bars so this may not be relevant.
March 9: Added clean theme to the list. Many Drupal 6 themes can also be previewed on D-Theme.com with accessibility enhancements if required.
However, those are relatively minor. I ran more comprehensive tests using the WAVE 4.0 and the Functional Accessibility Evaluator. Before running these two tests the following themes validated for XHTML 1.0 Strict & CSS (2.1 or 3.0) on Jan 23, 2009.
The other 13 themes failed for the following reasons:
Ability Theme - 6.x-2.x-dev (2008-Feb-17)
- 2 WAVE accessibility errors
Agregado Theme - 6.x-2.0-beta3
- The text content of each h1 element should match all or part of the title content.
- The page should contain at least one and no more than two h1 elements.
- Heading elements that follow the last h1 should be properly nested.
Artists C01 Theme - 6.x-1.1
- WARNING Deeply nested tables can cause problems when a document is rendered in a linear mode, e.g., by screen readers.
Andreas02 Theme - 6.x-1.3
- Heading elements that follow the last h1 should be properly nested.
- Fail: The default language was not specified.
Barron Theme - 2008-Jun-02
- 1 WAVE accessibility error
Blueprint Theme - 6.x-1.2
- Heading elements that follow the last h1 should be properly nested.
Chanel Nine Theme - 6.x-1.2
- Fail: The default language was not specified.
Four Seasons Theme - 6.x-1.20
- The text content of each h1 element should match all or part of the title content.
- The page should contain at least one and no more than two h1 elements.
- Heading elements that follow the last h1 should be properly nested.
- Each img element should have alt text.
Framework Theme - 6.x-2.2
- Heading elements that follow the last h1 should be properly nested.
Light Theme - 6.x-2.4
- Heading elements that follow the last h1 should be properly nested.
Slash Theme - 6.x-1.x-dev
- The text content of each h1 element should match all or part of the title content.
- The page should contain at least one and no more than two h1 elements.
Sharepoint-like Theme - 6.x-1.1
- 2 WAVE accessibility errors
- The text content of each h1 element should match all or part of the title content.
Simplex2 - 6.x-1.1
- 2 WAVE accessibility errors
The only real systematic thing that I could see from this was that Drupal could use to have standard ways to define the titles of lists, even if they aren't relevant to sighted users.
Primary Menu
,
Translation
,
Service Links
,
OpenID Authentication
,
Login Options
would all have been good options to have predated the navigation links. It is generally easier to just not display a title rather than to display and then hide it, but it would be better for accessibility.