Re: Proposal for WCAG 1.0 HTML Techniques module: using MAP group navigation links.

Wendy,

Comments below preceded by IJ:

Wendy A Chisholm wrote:
> 
> Some time ago (26 August to be precise) I took an action item to write a
> technique for using the MAP element to group navigation links.  Here is my
> proposal based on the minutes from the 26 August joint meeting between UA
> WG and WCAG WG
> [http://lists.w3.org/Archives/Public/w3c-wai-gl/1999JulSep/0307.html]
> 
> The main sticking point in the minutes was that the HTML recommendation did
> not specify say that it was o.k. to use MAP to mark up block content not
> associated with an image.  Since then, HTML 4.01 has been published and
> says, "The MAP element specifies a client-side image map (or other
> navigation mechanism) that may be associated with another elements (IMG,
> OBJECT, or INPUT). An image map is associated with an element via the
> element's usemap attribute. The MAP element may be used without an
> associated image for general navigation mechanisms."
> [http://www.w3.org/TR/html4/struct/objects.html#edef-MAP]
> 
> I propose that section 6.2 of the HTML Techniques module should read:
> <blockquote>
> 6.2 Grouping and bypassing links
> Checkpoints in this section:
> 13.6 Group related links, identify the group (for user agents), and, until
> user agents do so, provide a way to bypass the group. [Priority 3]
> 10.5 Until user agents (including assistive technologies) render adjacent
> links distinctly, include non-link, printable characters (surrounded by
> spaces) between adjacent links. [Priority 3]
> 
> When links are grouped into logical sets (for example, in a navigation bar
> that appears on every page in a site) they should be marked up as a unit.
> Navigation bars are usually the first thing someone encounters on a page.
> For users with speech synthesizers, this means hearing a number of links on
> every page before reaching the interesting content. There are several ways
> to allow users to bypass groups of links (as users with vision do when they
> see the same set on each page):
> - Include a link that allows users to skip over the set of navigation links.
> - Use the HTML 4.0 "tabindex" attribute to allow users to jump to an anchor
> after the set of navigation links. This attribute is not yet widely supported.
> - Provide a style sheet that allows users to hide the set of navigation links.
> - In the future, user agents will allow users to skip over elements such as
> navigation bars.

IJ: Change "will" to "may". 

> - In HTML, use the MAP element to group links then identify the group with
> the "title" attribute.

IJ: I think in the example below, the TITLE element might confuse people
since you talk about the "title" attribute.

> Example.
> In this example, the MAP element groups a set of links, the "title"
> attribute identifies it as a navigation bar, "tabindex" is set on an anchor
> following the group, and a link at the beginning of the group links to the
> anchor after the group. Also, note that the links are separated by
> non-link, printable characters (surrounded by spaces).
>     <HEAD>
>     <TITLE>How to use our site</TITLE>
>     </HEAD>
>     <BODY>
>       <MAP title="navigation bar">
>         [<A href="#how">Bypass navigation bar</A>]
>         [<A href="home.html">Home</A>]
>         [<A href="search.html">Search</A>]
>         [<A href="new.html">New and highlighted</A>]
>         [<A href="sitemap.html">Site map</A>]
>       </MAP>
>       <H1><A name="how" tabindex="1">How to use our site</A></H1>
>     <!-- content of page -->
>     </BODY>
> This use of the MAP element is discussed in the HTML 4.01 Recommendation
> [reference].
> </blockquote>

IJ: I don't know that you need title. The lack of a name attribute
means that no image can use this map as a graphical image map. So
it's purpose could only be to contain some other navigation mechanism.

I'm not sure why identifying MAP elements that create navigation
mechanisms
is even an issue: MAP is only used for purposes of navigation. User
agents
could allow users to turn off the rendering of any MAP content while
still parsing and handling what is specified by that content (i.e.,
active
regions).

IJ: I recommend an additional technique for creating accessible
graphical and text image maps until user agents do this themselves:

 - Most older user agents render MAP content but not AREA content. If
you
   put both in today, the A elements will be rendered as text links and
   the AREA elements will produce the graphical image map.

 - Use "coords" on the A elements. User agents that support HTML 4.01
will 
   ignore the AREA elements when mixed with A elements. So in effect,
   the A elements do all the work, which was the goal of this change in 
   HTML 4.0 to begin with: get rid of AREA.

(This is all described in HTML 4.01).

 - Ian
 
> For comparison, the current HTML Techniques module
> [http://www.w3.org/WAI/GL/WD-WCAG10-TECHS-20000309/html-techniques.html]
> contains the following text:
> <blockquote>
> 6.2 Grouping and bypassing links
> Checkpoints in this section:
> 13.6 Group related links, identify the group (for user agents), and, until
> user agents do so, provide a way to bypass the group. [Priority 3]
> 10.5 Until user agents (including assistive technologies) render adjacent
> links distinctly, include non-link, printable characters (surrounded by
> spaces) between adjacent links. [Priority 3]
> @@this section needs to be updated with the MAP technique discussed a while
> back
> When links are grouped into logical sets (for example, in a navigation bar
> that appears on every page in a site) they should be marked up as a unit.
> Navigation bars are usually the first thing someone encounters on a page.
> For users with speech synthesizers, this means having to hear a number of
> links on every page before reaching the interesting content of a page.
> There are several ways to allow users to bypass groups of links (as users
> with vision do when they see the same set on each page):
> Include a link that allows users to skip over the set of navigation links.
> Use the HTML 4.0 "tabindex" attribute to allow users to jump to an anchor
> after the set of navigation links. This attribute is not yet widely supported.
> Provide a style sheet that allows users to hide the set of navigation links.
> In the future, user agents will allow users to skip over elements such as
> navigation bars.
> In HTML, use the DIV, SPAN, P, or FRAME elements to group links then
> identify the group with the "id" or "class" attributes.
> Example.
> In this example, the P element groups a set of links, the "class" attribute
> identifies it as a navigation bar (e.g., for style sheets), "tabindex" is
> set on an anchor following the group, and a link at the beginning of the
> group links to the anchor after the group. Also, note that the links are
> separated by non-link, printable characters (surrounded by spaces).
>     <HEAD>
>     <TITLE>How to use our site</TITLE>
>     </HEAD>
>     <BODY>
>       <P class="nav">
>         [<A href="#how">Bypass navigation bar</A>]
>         [<A href="home.html">Home</A>]
>         [<A href="search.html">Search</A>]
>         [<A href="new.html">New and highlighted</A>]
>         [<A href="sitemap.html">Site map</A>]
>       </P>
>       <H1><A name="how" tabindex="1">How to use our site</A></H1>
>     <!-- content of page -->
>     </BODY>
> </blockquote>
> 
> thoughts?
> --wendy
> 
> --
> wendy a chisholm
> world wide web consortium
> web accessibility initiative
> madison, wi usa
> tel: +1 608 663 6346
> /--

-- 
Ian Jacobs (jacobs@w3.org)   http://www.w3.org/People/Jacobs
Tel:                         +1 831 457-2842
Cell:                        +1 917 450-8783

Received on Wednesday, 5 April 2000 13:31:17 UTC