- From: James Craig <jcraig@apple.com>
- Date: Thu, 03 Apr 2014 13:49:22 -0700
- To: Dominic Mazzoni <dmazzoni@google.com>
- Cc: Joanmarie Diggs <jdiggs@igalia.com>, W3C WAI Protocols & Formats <public-pfwg@w3.org>
- Message-id: <3537DDFF-4998-4A4D-9149-67A57BC60E89@apple.com>
On Apr 3, 2014, at 11:59 AM, Dominic Mazzoni <dmazzoni@google.com> wrote: > On Wed, Apr 2, 2014 at 12:25 AM, James Craig <jcraig@apple.com> wrote: > For what it's worth, I think we should *eventually* add roles for all of these that we've mentioned. Absolutely we should. > > Would it be a valid use case for aria-roledescription to be used for an application-specific role that's more useful to the user than a generic role - but specifically one that we're never likely to standardize? Yes. The "never likely to standardize" bit is subjective though. > For example, a webmail client might define an "attachment" object, I think it'd be fine to use: <div role="button" tabindex="0" aria-roledescription="attachment button">family_reunion.jpg</div> Potentially even on native elements where there is a one-to-one role mapping from the host language element to the desired ARIA role: <button aria-roledescription="attachment button">family_reunion.jpg</button> But not in the cases like Joanie mentioned, where there is no directly applicable mapping, because the custom role-description could potentially mask some useful platform-specific <video> <!-- Don't use a role or role description here, b/c there is no "video" role in ARIA yet. --> <div role="group" aria-roledescription="video player"> <!-- Fine to use custom role description on generic div. --> It'd obviously be incorrect to mask some native functionality with a custom role description as well. Hopefully most people won't d this, but calling a "slider" a "button" would be problematic for a variety of reasons. I'm not terribly worried about this, but we can't prevent everyone from doing stupid things, like declaring this slider is a checkbox that should be called a button: <input type="range" role="checkbox" aria-role-description="button"> <!-- No. --> > or a presentation editor might define a "slide" object, and so on - in the case where this object doesn't really behave quite like any standard role. Of course it'd still need a valid ARIA role as a fallback, one that's close enough that it will put AT into the right mode - but the role description will tell the user a lot more about what it is. Yep. ARIA 1.0: <div role="group" aria-labelledby="slide1title"> ARIA 1.1 (hopefully): <div role="group" aria-roledescription="slide" aria-labelledby="slide1title"> Future release, once the "chart" role is in but before all recent browsers support it: <div role="slide group" aria-roledescription="slide" aria-labelledby="slide1title"> And finally, once the new role is in common use and supported in all recent browsers, there should be no more need for the fallback role or custom role description: <div role="slide" aria-labelledby="slide1title">
Received on Thursday, 3 April 2014 20:49:51 UTC