Drupal 8 has been a long time coming, (work started on the 8th version of Drupal early in 2011) but with the first release candidate (Drupal 8 RC1) having been made available it looks like an official launch is soon to be here.

There are a lot of great new features in Drupal 8, which range from things like mobile responsiveness built into the core themes, included WYSIWYG interfaces and edit-in-place functionality, configuration management, and many popular modules like Views being integrated directly into Drupal core.

Accessible Web

Though while not perhaps as glamorous as some of the other new features in Drupal 8, one aspect of its improvement stands out to me as being remarkably important, and quite indicative of a Drupal that has really "grown up". The improvement I'm referring is the much more extensive support for web accessibility technologies like WAI-ARIA and semantic HTML5 that will now be a part of Drupal.

Web accessibility refers to the inclusive practice of removing barriers that prevent interaction with, or access to websites, by people with disabilities. When sites are correctly designed, developed and edited, all users have equal access to information and functionality. [Wikipedia]

For the average person, it may not be immediately obvious how important accessibility features are for a website. But, the sobering truth is that millions of people may rely upon assistive technologies to aid them with web browsers while using the Internet. This strong move to drastically enhance the support in Drupal 8 for these web accessibility technologies is a clear sign that accessibility matters to the Drupal community, and that being inclusive to all people is a lofty goal worth aspiring to.

WAI-ARIA and Drupal 8

WAI-ARIA is a technical specification published by the W3C that specifies how to increase the accessibility of web pages, in particular, dynamic content and user interface components developed with Ajax, HTML, JavaScript and related technologies. The most simple explanation of it, is a set of attributes and roles that are added to HTML elements which enhance the semantics of a web page, thereby allowing screen readers and other assistive technologies with doing their job. This can be as basic as adding a role of "button" to an H1 tag if that is what it is actually being used as, or more complex as describing the tree hierarchy of large lists and tables.

Updates in Drupal 8 Accessibility

While there were some steps forward with regard to accessibility in Drupal 7, some of the technologies that are crucial to this initiative were not as ready until Drupal 8 became a project. With this upcoming major version so much more of the Drupal core HTML has had HTML5 and WAI-ARIA features added to it. The end result is that just by using Drupal 8 your website will likely be far more accessible to assistive technologies, and the users that rely on them, than ever before.

Inline Form Errors and Status Messages

One example of these types of improvements include how form errors and status messages are treated. It is possible that in previous Drupal versions that important status messages or error alerts were not suitably noticeable for users working with screen readers. This type of failure of a website can be incredibly frustrating because when things don't work not getting any information about why makes it difficult to move forward with your tasks. This will work much better in Drupal 8.

Images With Alt Text

The "alt" attributes for images are often utilized in SEO practices to help search engines know what the content is about, but they are as much if not more important for accessibility so that users with vision impairments can know more about what the web page is displaying. Unfortunately, not all Drupal websites automatically provide descriptions for the alt tags of images at the moment when they are uploaded. With Drupal 8 website administrators will be able to force alt text of images in order to help mitigate this issue.

Links Underlined by Default

While it may seem like a simple change, main content links will now be styled with an underline by default, and not just indicated by a color change only. This made identifying links difficult for visually challenged users, and really came down to not subverting some basic functionality in HTML for design purposes.

Buttons Instead of Links

Some user interface elements that were intended to be action oriented rather than linking oriented were added as anchors rather than buttons. From a semantic standpoint using button elements is much more logical, and so Drupal 8 has made that change to use buttons rather than links in some cases. WAI-ARIA roles can potentially help with identifying the purposes of certain elements, but it is also a key guideline for this standard to not rely on ARIA when regular HTML elements can be used instead.

Drupal For Everyone

This hasn't been an exhaustive list of all of the accessibility improvements coming in Drupal 8, there are some other articles [1] [2] on Drupal.org that you can review to find out more, and I'm sure more documentation will be released as we get closer to a Drupal 8 launch.

I think it is great though to realize that bit by bit working with Drupal is helping to make the Internet a much more interactive and helpful place for more people everywhere, regardless of their circumstances. Even with its many improvements Drupal 8 will be far from perfect with regard to accessibility, and no doubt we haven't fixed all the problems yet, but it feels good to be a part of a community which strives daily to solve them.