- From: Joseph Scheuhammer <clown@alum.mit.edu>
- Date: Fri, 11 Jul 2014 10:35:14 -0400
- To: Mark Sadecki <mark@w3.org>, Joseph Scheuhammer <clown@alum.mit.edu>, Shane McCarron <shane@aptest.com>, "spec-prod@w3.org Prod" <spec-prod@w3.org>
Hi Mark, Thanks for the use case. Some thoughts: > For a sighted user, it is clear when the note ends (its contained > within a box with a green background. How does a screen reader user know when > the non-normative note ends and the normative text resumes? My suggested > solution was to add a region role to the div with a aria-label of "informative." Adding role="note" should be sufficient. Here is the current structure of a Note -- I took this example from the Core Accessibility API Mappings 1.1, assuming it is typical. > <div class="note"> > <div class="note-title" aria-level="3" role="heading" id="h_note_3"> > <span>Note</span> > </div> > <p class=""> > Note: refer to the <a href="#focus_state_event_table">Table of > accessibility <abbr title="Application Programming > Interfaces">APIs</abbr> for focus states and events</a> for the rules > in this section. > </p> > </div> First, the entire note is wrapped in a <div class="note">. Even though this is relatively semantically neutral, it is exposed as a separate accessible object in the a11y tree -- see http://rawgit.com/w3c/html-api-map/master/index.html#el-div. Also, the inner div has a role of heading, resulting in a heading accessible in the a11y tree. FF exposes these IA2 mappings in the a11y tree: - section -- heading, level 3. --- text: "Note" -- paragraph --- text: "Note: refer to the" --- link ---- text: "Table of accessibility Application Programming Interfaces for focus states and events --- text: "for the rules in this section." The entire note is contained in a separate accessible with role IA2_ROLE_SECTION. The screen reader has information about the beginning, end, and contents of the note. Still, IA2_ROLE_SECTION is relatively bland, and it would be much better to use a role of note on the outer <div>. That results in a IA2_ROLE_NOTE accessible: - note -- heading, level 3. --- text: "Note" -- paragraph --- text: "Note: refer to the" --- link ---- text: "Table of accessibility Application Programming Interfaces for focus states and events --- text: "for the rules in this section." > ... with a aria-label of "informative." Two comments regarding using "informative" as label text: First, as I noted before, that doesn't fit in the sense of the name of a note. It feels more like a description of the section. Secondly, and more importantly, if it is important to inform the screen reader user that the section is informative, why not inform all users? The reason *I* know that all notes are informative is because as an editor, I have been asked to remove or reword notes that contained normative language. Ergo, notes aren't normative. But, a web developer (i.e, not a W3C spec geek) wouldn't automatically know that a note is only informative. So, if it is important to convey a note's informative status, how about including that text in the note itself? Something like this: <div role="note" class="note"> <div class="note-title" aria-level="3" role="heading" id="h_note_3"> <span>Note (informative) </span> </div> <p> Refer to the ... for the rules in this section. </p> </div> -- ;;;;joseph. 'Array(16).join("wat" - 1) + " Batman!"' - G. Bernhardt -
Received on Friday, 11 July 2014 14:35:45 UTC