Page Source Order & Accessibility

Presentation to OzeWAI 2005
Roger Hudson and Russ Weakley

Back

Question 1: Is source order important for screen reader users?

Back

Question 2: Are skip links a waste of time?

Back

Question 3: What are structural labels and do they help?

Back

We visit a site with preconceived notions about how it is likely to work

Back

Our preconceived notions are:

As we learn to use the site

Back

Over the last four years we have noticed:

Back

CSS = accessibility
CSS = Source order freedom

Source order freedom = accessibility?

Back

"Providing page content before navigation is good for screen reader users."

Says who?

Back

Assumptions are assumptions

Endless repetition does not make them true

Back

Three stage process to test the assumption "screen reader users want content first"

Back

Stage 1: Source order expectations (survey)

Back

Survey of expectations

Back

Each participant sent an email survey on their expectation about how three components of web pages will be ordered;

Back

Survey scenario: Imagine you are about to visit a site with five main areas and each of these areas has a number of sub-sections or pages. Each page of the site contains the site navigation to the five main areas, local navigation to the sub-sections or pages within that area, and the informational content of the page.

Now, based on you past experiences of the web please provide a Y (yes) or N (no) response to the following statements. (Please note, the statements do not relate to how you would prefer page components to be presented but to your expectations about what is likely to happen).

  1. I would expect the site navigation to the main site areas to be presented first:
  2. I would expect the information content of the page to be presented first:
  3. I would expect the site navigation to the main areas and the local navigation to pages within an area to be separate and easy to identify:
  4. I would expect the site navigation to the main areas to be presented first, followed by the local navigation within that area, and then the information content:
  5. I would expect the site navigation to be presented first, followed by the information content and then the local navigation:
  6. I would expect the information content to be presented first, followed by the site navigation and then the local navigation:
Back
18 Screen reader users 5 Text Browser users
YES NO YES NO
1. I would expect the site navigation to the main site areas to be presented first: 18 0 5 0
2. I would expect the information content of the page to be presented first: 0 18 0 5
3. I would expect the site navigation to the main areas and the local navigation to pages within an area to be separate and easy to identify: 4 14 3 2
4. I would expect the site navigation to the main areas to be presented first, followed by the local navigation within that area, and then the information content: 15 3 5 0
5. I would expect the site navigation to be presented first, followed by the information content and then the local navigation: 4 14 2 3
6. I would expect the information content to be presented first, followed by the site navigation and then the local navigation: 1 17 0 5
Back

Expectation Survey results:

Back

Stage 2: Task-based user testing (observation)

Back

Task-based user testing

Back

Four test sites:

What is the difference between version 1 and version 2?

Back

Four test participants

Back

Participants were observed using the sites for the test tasks

Only the beginner JAWS user had problems doing the tasks.

Back

Which sites did the participants find the easiest to use:

Back

Skill with the technology determined how well a participant was able to do the tasks

Beginner JAWS user found the presentation of navigation after content (frogs) made the site much more confusing and difficult to use.

Back

Different strokes for different folks

Back

Skip Links

Back

Structural labels for different levels of navigation

All participants said these were very useful
(but two most experienced testers did not appear to use them)

Back

Stage 3: Source order preference (survey)

Back

Follow up email survey to determine:

Back

At this stage, we are asking people to consider two different sites and use each one for a simple task. Each site presents the navigation and content in a different order. Both sites contain skip links to either navigation or content and headings identifying the different levels of navigation.

After you have used both sites we would like you to answer four questions.

Site 1: Birds. http://www.maxdesign.com.au/jobs/source-order/birds2/index.htm

This site presents the navigation menus first followed by the information on the page.

Task: What similarity is there in the feeding habits of the Purple Swamphen and the Green Catbird?

Site 2: Frogs. http://www.maxdesign.com.au/jobs/source-order/frogs2/index.htm

This site presents the information on the page first followed by the navigation menus.

Task: What similarity is there in the habitat of the Cascade Tree frog and the Common Mist frog?

Please answer the following questions. We will be very grateful for any additional comments you might wish to make.

Questions:

Back

Eight people responded to the survey

All respondents were able to complete the test tasks.

Back

Which site did you find easiest to use?

Back

Did you use the skip links?

Participant comments:

Back

Did you find the headings identifying the different levels of navigation useful?

Participant comments:

Back

Research observations and outcomes

Back

The majority of screen reader users EXPECT navigation to be presented before the content.

Back

Our research showed no clear overall PREFERENCE of source order

Back

Inexperienced users may find presentation of content before navigation disorientating

The screen reader user with the least experience relied heavily on expectations of the source order.

This tester found it difficult to use the site that presented the content before the navigation.

Back

For experienced users source order seems to be irrelevant

Assistive technology users have a variety of techniques they can use when navigating a site or locating information on a page.

The effectiveness of these techniques depends on:

Back

Some screen reader users are likely to find skip links useful

50% of test-site research participants said they were useful.

Back

Structural labels will benefit most screen reader users

77% of expectation survey participants indicated difficulty in differentiating between different navigation menus on web pages.

100% of test-site participants reported the labels identifying the different levels of navigation on the sites where useful.

Back

Recommendations

Back

Thank you

Roger Hudson

Back

Marking up and styling an HTML document

Presentation to OzeWAI 2005
Roger Hudson and Russ Weakley

Back

What's this about?

This presentation will demonstrate various methods for marking up and styling a document.

Back

The content

For this exercise we will make the assumption that an average page could include:

Back

Logo placement options

Option a:

<h1><img src="logo.gif" alt="">Australian Birds</h1>

Option b:

<h1> Australian Birds</h1>
#header { background: url(logo.gif) no-repeat 10px 1.5em; }

For this exercise the option b has been chosen.

Back

Skip link choices

Option a:

<a href="#content">Skip to content</a>

Option b:

<a href="#content">Skip to content</a>
<a href="#sitenav">Skip to navigation</a>

Option c:

<a href="#content">Skip to content</a>
<a href="#sitenav">Skip to main navigation</a>
<a href="#secondarynav">Skip to page navigation</a>

For this exercise the option b has been chosen.

Back

Skip link placement within the markup

Option a

<a href="#content">Skip to content</a>
<h1>Australian Birds</h1>

Option b

<h1>Australian Birds</h1>
<a href="#content">Skip to content</a>

For this exercise the option b has been chosen.

Back

Visible or invisible skip link

"Skip links are beneficial to keyboards users, people with mobility problems, and possibly other groups too. The most usable means of implementing skip links is to leave them visible, so that people who require them are aware they exist."

Juicystudios

For this exercise visible skip links will be used.

Back

On-screen skip link positioning

For low vision users who come to a site using magnification, positioning skip links in the top left corner means that they will be immediately accessible.

For this exercise left-aligned skip links will be used.

Back

Skip links pointing to "name" or "id"

Option a

<a name="content"></a>

Option b

<h2><a name="content">Common name: Australian Pelican</a></h2>

Option c

<div id="content">

For this exercise the option c has been chosen.

Back

Structural labels

Back

Structural labels – markup

<h2 class="structurelabel">
    Site navigation
</h2>
<ul id="sitenav">
    <li><a href="index.htm">Home</a></li>
    <li><a href="water.htm">Water birds</a></li>
    <li><a href="land.htm">Land birds</a></li>
    <li><a href="urban.htm">Urban birds</a></li>
</ul>
Back

Structural labels – CSS

Option a:

display: none;

Option b:

.structurelabel
{
    position: absolute;
    left: -5000px;
    width: 4000px;
}

For this exercise the option b has been chosen. More details on the off-left method.

Back

Navigation markup options

Option a: Standard nested list

Option b: Two separate lists

Option c: Two separate lists with structural labels

<h2 class="structurelabel">
    Site navigation
</h2>
<ul id="sitenav">
    <li><a href="index.htm">Home</a></li>
    <li><a href="water.htm">Water birds</a></li>
    <li><a href="land.htm">Land birds</a></li>
    <li><a href="urban.htm">Urban birds</a></li>
</ul>
<h2 class="structurelabel">
    Water birds navigation
</h2>
<ul id="secondarynav">
    <li><a href="birds01.htm">Australian Pelican</a></li>
    <li><a href="birds02.htm">Black Swan</a></li>
    <li><a href="birds03.htm">Little Pied Cormorant</a></li>
    <li><a href="birds04.htm">Purple Swamphen</a></li>
    <li><a href="birds05.htm">Musk Duck</a></li>
</ul>

For this exercise the option c has been chosen.

Back

Adding semantic divisions

<div id="container">
    <div id="header"></div>
    <ul id="sitenav"></ul>
    <ul id="secondarynav"></ul>
    <div id="content"></div>
    <div id="extras"></div>
    <div id="footer"></div>
</div>
Back

The final markup

<body>
<div id="container">
    <div id="header">
        <h1>
            Australian Birds
        </h1>
        <ul>
            <li><a href="#content">Skip to content</a></li>
            <li><a href="#sitenav">Skip to navigation</a></li>
        </ul>
    </div>
    <h2 class="structurelabel">
        Site navigation
    </h2>
    <ul id="sitenav">
        <li><a href="index.htm">Home</a></li>
        <li><a href="water.htm">Water birds</a></li>
        <li><a href="land.htm">Land birds</a></li>
        <li><a href="urban.htm">Urban birds</a></li>
    </ul>
    <h2 class="structurelabel">
        Water birds navigation
    </h2>
    <ul id="secondarynav">
        <li><a href="birds01.htm">Australian Pelican</a></li>
        <li><a href="birds02.htm">Black Swan</a></li>
        <li><a href="birds03.htm">Little Pied Cormorant</a></li>
        <li><a href="birds04.htm">Purple Swamphen</a></li>
        <li><a href="birds05.htm">Musk Duck</a></li>
    </ul>
    <div id="content">
        <h2>
            Common name: Australian Pelican
        </h2> 
    </div>
    <div id="extras">
        <img src="pelican.jpg" alt="" width="160" height="160">
    </div>
    <div id="footer">
        <h2 class="structurelabel">
            Footer information
        </h2>
    </div>
</div>
</body>
</html>
Back

Styling the header

#header
{
    position: relative;
    padding: 30px 20px 20px;
    border-bottom: 1px solid #fff;
    color: #fff;
    background: #333 url(logo.gif) no-repeat 10px 20px;
}
Back

Styling the <h1>

#header h1
{
    margin: 0;
    padding: 0 0 0 70px;
    font-size: 220%;
    font-weight: normal;
}
Back

Styling the <ul>

#header ul
{
    margin: 0;
    position: absolute;
    left: 0;
    top: 0;
    font-size: 70%;
    background: #222;
    width: 760px;
    padding: 1px 10px;
    border-bottom: 1px solid #fff;
}
Back

Styling the <li>

#header li
{
    display: inline;
    padding-right: 1em;
}
Back

The final result

Here's one I prepared earlier

Back

Thank you!

Russ Weakley