Should I be using WAI-ARIA in my website builds? Will it have any benefit? Is anyone adding 'role' to their code at the moment?

Some info about WAI-ARIA - www.w3.org/WAI/intro/aria.

The tab, link, checkbox and slider roles, plus many more, aren't available yet for HTML5. From looking at the list of what is available (see below), and what will be coming in the future, it looks like we might be applying roles to a huge amount of tags on our pages. Its not an issue especially if it brings benefit to users using readers etc

Also, a side question, will search engines give any benefits to sites using WAI-ARIA?

List of safe roles to use (I think)

•   role="article"
•   role="banner"
•   role="complementary"
•   role="contentinfo"
•   role="form"
•   role="heading"
•   role="main"
•   role="navigation"
•   role="search"

Examples of usage in HTML5 code:

<header role="banner"></div>for a main header, banner only allowed once per page

<header role="heading"></div>- for all headers after the main one

<aside role="complementary"></aside>

<form role="search"></form>

  • 1
    Interesting question, it isn't something I have thought about enough to give an answer on just yet, but looking forward to following this one!
    – Toby
    Nov 25, 2011 at 13:04
  • Me too. With the small amount of roles currently released it won't be much effort to start putting them into our code but is it pointless at the moment, e.g. will give no one any benefit.
    – DBUK
    Nov 27, 2011 at 13:07
  • But, what the hell is the purpose of an ARIA roles of navigation on an html5 nav element? You'd have to be writing the worst screen reader in the world to need these. Sep 15, 2013 at 17:39

2 Answers 2


OK I have been doing some thinking and research around this since you asked this.

It is now my opinion that you should use them, and I intend to start bringing them into projects.

Just because they aren't available doesn't mean they can't be parsed by assistive technologies and if they help to even add a little bit of semantic value then why not?

If more webmasters adopted WAI-ARIA we could start to see more of the benefits and limitations.

Since there are some positives, and no negatives (save the slight bump in write time and HTML size) I say go for it.

Here is an interesting blog post on the subject.

  • 1
    Thanks, that blog post is great, plus, there were more useful links scattered amongst and below the post. I shall be using WAI-ARIA in my next build. I guess its best for us to get used to it now while there are only a few tags, before they unleash the rest of them.
    – DBUK
    Nov 29, 2011 at 14:33

This. is. crap.

I've long catered to the blind community. I use alt on all my images and have always done so. I expand every abbr. I use accessibility web "checkers" and validators. I bend over backward to provide an accessible site.

But, this stuff has to stop.

Per the blog post listed above.

While it might seem that the nav tag would defining the nav element’s “role,” not every browser will understand it (just because the browser can display it, does not mean it understands the tag).

Look, if you're blind and you can't update your browser to an HTML5 compatible reader, we need to start to look at you in the same light we look at IE6 users. You may be blind; but, you're not stupid. Being blind is not an excuse for being lazy. You simply need a new screen reader.

<div class="sr_only">
  <span role="navigation">
  <span role="heading">
  <span role="article">
  <span role="search">
    Dear Blind community, we write semantic HMTL5 for a purpose.
    Update your screen reader!

This is a test of tolerance where the whole world is shouldering a stupid idea to accommodate archaic technology. Granted, at least those bending over backwards aren't doing it to make a buck, but by now you should be using a screen reader with at least biyearly updates.

Also important, is that a lot of these things mess up newer screen readers when done wrong. For instance, <nav> is typically a mere container for a <ul>. If you have a <ul role="navigation"> under a <nav> you could run into a problem with useless verbosity.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.