WCAG20/Institutional Memory/SC 2.4.1

From WCAG WG

Institutional Memory input for SC 2.4.1:

AWK: There was and remains some debate as to what was sufficient for this. The goal is to have users avoid a huge number of links at the top of each page - Amazon used to have dozens of links, but even a set of 5-10 links can get very irritating to have to continually navigate through on every page on a site.

AWK: The use of heading elements on a page to allow users to benefit from the structure for navigational purposes is generally accepted but not everyone agrees that it is a good enough solution, largely because sighted keyboard-only users don't have as many tools to help them utilize the structure for this purpose. There are some tools available, such as greasemonkey scripts for Firefox, but not all users know about these. To date, browser vendors have not implemented direct support for navigation by elements or headings by keyboard users in the way that the Opera browser did years ago (does it still?).

Loretta: This SC grew out of a desire to provide more efficient keyboard navigation. However, we couldn't find a way to specify testable criteria: is there a maximum number of keystrokes that will get you to any part of the page? How many heading or landmark points are enough? is there a maximum number of elements that you should have to tab through? etc? Skipping over repeated content addresses only a very small part of this issue, but was clear and testable.

Bruce: Historically, this was just to harmonize with 508 1194.22(o): A method shall be provided that permits users to skip repetitive navigation links.

Michael: I think a predecessor to this was the WCAG 1 requirement for headings, expecting that to be the main way you would move among groups of content. In the WCAG 2 time frame we were expecting the emergence of more semantic blocks, which have only in practice started to emerge with HTML 5 and ARIA landmarks. Skippability of those based simply on being a block is now possible but I don't know how widely accessibility supported. In the meantime we accepted that divs would be often considered blocks, though you wouldn't want every single div turned into a skippable element. Hence the requirement to provide some good way of skipping what are conceptually blocks.

Michael: I think HTML could use more block elements that have inherent skippability, and of course other technologies could use more of this structure. But the need for authors to provide explicit mechanisms might diminish. Instead, we advertise skippability as one of the good reasons for providing block semantics.

Christophe: Christophe: Fluid UI Options is a JS library that developers can add to web pages and that can (among other things) create a table of contents based on the headings. See http://wiki.fluidproject.org/pages/viewpage.action?pageId=34572605 (and see it in action at http://handbook.floeproject.org/index.php?title=Inclusive_learning.) But useful UA support for heading navigation remains low.