508 Compliance Testing for Example Site

12
508 Compliance Testing for Example Site

Transcript of 508 Compliance Testing for Example Site

508 Compliance Testing for Example Site

1 Contents

1 Contents................................................................................................................................. 2

2 Tasks by Page ...................................................................................................................... 4 2.1 Code Set Management............................................ Error! Bookmark not defined.

3 Required Fields..................................................................................................................... 4

4 Color ....................................................................................................................................... 4 5 No CSS (disabled) ............................................................................................................... 4

6 Headers ................................................................................................................................. 5 7 Links ....................................................................................................................................... 5 8 Messages .............................................................................................................................. 5

9 Forms ..................................................................................................................................... 5 9.1 Input Fields ..................................................................................................................... 6

9.2 Checkboxes and Radio Buttons .................................................................................. 6 9.3 Form Validation .............................................................................................................. 6

10 Tabbing ............................................................................................................................... 6

11 Description and Help Text................................................................................................ 6 11.1 Aria-labelledby ............................................................................................................ 7

11.1.1 Example: .............................................................................................................. 7 11.1.2 CODE SNIPPET: ................................................................................................ 7

12 Navigation........................................................................................................................... 7

12.1 Main Navigation.......................................................................................................... 7 12.2 Skip Navigation........................................................................................................... 7

13 Frames ................................................................................................................................ 8 14 Tables.................................................................................................................................. 8

14.1 Layout Tables ............................................................................................................. 8

14.2 Data Tables ................................................................................................................. 8 14.3 Complex Tables ......................................................................................................... 9

15 Docs..................................................................................................................................... 9 16 Plugins and Scripts ........................................................................................................... 9 17 Dynamic Media .................................................................................................................. 9

17.1 Audio .......................................................................................................................... 10 17.2 Video .......................................................................................................................... 10

17.3 Moving Images ......................................................................................................... 10 18 Images............................................................................................................................... 10

18.1 Icons ........................................................................................................................... 10

18.2 Image Maps .............................................................................................................. 10 19 User Guide ....................................................................................................................... 11

19.1 Tour ............................................................................................................................ 11 19.2 Keyboard Shortcuts ................................................................................................. 11

20 .................................................................................................................................................. 11

21 Resources ........................................................................................................................ 12 21.1 Rationale and Glossary ........................................................................................... 12

21.2 Index........................................................................................................................... 12

2 Tasks by Page

2.1 Page Sample

1. Add a close button to comment dropdowns that is keyboard useable

3 Required Fields

1. Are all cues for filling out the form available to users of assistive technology, e.g. mandatory

fields, help boxes, error messages? – 14.2 2. Required fields

a. Check that any required fields have (*) next to the label

b. At the top right of any form page with required fields is (*) indicates required fields

4 Color

1. Test color to font ratio 4.5:1 ratio (also test removing images to make sure alt text still passes)

a. Logo fails without image the text is unreadable

b. Use high color contrast for images of text. If images of text are used, a text equivalent of the image must also be provided.

2. Distinguish links from surrounding text with sufficient color contrast. 3. Are links distinguished from surrounding text with sufficient color contrast and is additional

differentiation provided when the link receives focus, e.g. it becomes underlined? – 3.5

5 No CSS (disabled)

1. Ensure that the color to font color ratio is maintained. 2. Color and font information should be rendered in the browser’s default CSS.

3. Headings, Paragraphs and Lists should be obvious and sensible. 4. Page content order should make sense.

5. Text other than logos and banners should be rendered as text rather than images. 6. Content that was not visible with CSS should continue to be invisible without CSS. 7. Any content or functionality that was provided by CSS via mouse actions must also be

provided through keyboard-triggered event handlers. 8. With CSS disabled, is color and font information rendered in the browser's default CSS? -4.1 9. With CSS disabled, are headings, paragraphs, and lists obvious and sensible? – 4.2 10. With CSS disabled, does the order of the page content make sense as read? – 4.3 11. With CSS disabled, is most text, other than logos and banners, rendered in text rather than

images? – 4.4 12. With CSS disabled, does any content that was invisible before stay invisible? -4.5

13. With CSS disabled, is any content or functionality provided by the CSS through mouse act ion

also provided through keyboard-triggered event handlers? - 4.6 14. If a “skip link” is provided, does the anchor element contain text content that is visible with

CSS disabled? – 15.2 15. If a “skip link” is provided and it is hidden with CSS, is it available to users of assistive

technology, e.g. not using the display:nonemethod? – 15.3

6 Headers

1. Are heading elements used to convey logical hierarchy and denote the beginning of each section of content?

7 Links

1. Tab to links – make sure on focus they are underlined unless navigation links or images

8 Messages

1. Check all messages to make sure they make sense 2. Check that all messages are above titles but after user guide/breadcrumbs

3. All messages of the same type (e.g. error) should be in one box. 4. If more than one error they should be in a bulleted or numbered list. 5. Before messages (but after icons) add example: (message type)

<span>Error</span> 6. Add system timeout message when time remaining is 1min

7. See 16.4 and 16.8 8. Use descriptive error messages. Do form error messages identify the error(s) to the user and

describe them to the user in text? 9. Are all cues for filling out the form available to users of assistive technology, e.g. mandatory

fields, help boxes, error messages? – 14.2 10. Do form error messages identify the error(s) to the user and describe them to the user in

text?14.6 11. Is enough time provided to allow users to read and interact with content? – 15.5

9 Forms

1. Is placeholder text, if used, NOT redundant or distracting to users of assistive technology? -14.5

9.1 Input Fields

1) All input fields should have a focus area around them when tabbed to 2) Does each appropriate input element or form control have an associated and

visible label element or title attribute? – 14.1 3) Are all cues for filling out the form available to users of assistive technology, e.g. mandatory

fields, help boxes, error messages? – 14.2

9.2 Checkboxes and Radio Buttons

1. Are logically-related groups of form elements identified with appropriate fieldset and legend elements?

9.3 Form Validation

1. All fields marked as required

2. Dates typed in format (dd/mm/yyyy or mm/dd/yyyy as in 21/02/2015) 3. Password requirements

4. Extra help can be found immediately after each field see also aria-labelledby

10 Tabbing

1. Is the tab order to reach the form and the tab order between form elements logical and

consistent with the normal and visual order of entering form data? – 14.3 2. Can a user navigate over groups of links, between multiple groups of links, and between

sections of the page content by means of section headings or visible and audible local links? – 15.4

11 Description and Help Text

1. Associate descriptive and/or instructional text for links, form fields and other interface elements.

2. Are all cues for filling out the form available to users of assistive technology, e.g. mandatory

fields, help boxes, error messages? -14.2 3. Is the functionality of the content predictable, i.e. will a user experience contextual changes

when unbeknownst to them? – 16.2 4. Does the user have control over the timing of content changes? – 16.3 5. If a page or application has a time limit, is the user given options to turn off, adjust, or extend

that time limit? - 16.4 6. If an authentication session expires, can the user re-authenticate and continue the activity

without losing any data from the current page? – 16.8

11.1 Aria-labelledby

1. For=”” (for all labels)

2. Name=”” (for all inputs) 3. Fieldset (for all checkbox or radio button groups) 4. Legend (description for all checkbox or radio button groups)

5. Any input without a label should include a title tag description (e.g. including search boxes and what it searches)

6. Descriptions how to: a. Id (custom for all labels and legends) b. Id (custom for all descriptions)

c. Input should include aria-labelledby=”idoflabel idofdescription” see also aria-labelledby

11.1.1 Example:

Expiration date: MM/YYYY

11.1.2 CODE SNIPPET:

<label id="expLabel" for="expire" tabindex="-1">Expiration date:</label>

<span>

<input type="text" name="expire" id="expire" aria-labelledby="expLabel

expDesc">

<span id="expDesc" tabindex="-1">MM/YYYY</span>

</span>

12 Navigation

12.1 Main Navigation

1. Add focus elements

12.2 Skip Navigation

1. Navigate over groups in main content area 2. Navigate between sections of the page 3. Navigate between help text

4. Navigate between headings 5. Add focus Elements

6. If repetitive navigation links are at the beginning of the source of the HTML page, can a user

navigate via a link, the “skip link”, at the top of each page directly to the main content area? – 15.1

7. Can a user navigate over groups of links, between multiple groups of links, and between

sections of the page content by means of section headings or visible and audible local links? – 15.4

8.

13 Frames

1. Does each frame and iframe element have a meaningful title attribute? – 9.1 2. Does the page have equivalent content in a noframes element for user agents that do not

support frames? – 9.2

14 Tables

14.1 Layout Tables

1. The content must linearize properly when the table is turned off. 4.7

2. Th elements and summary, headers, scope, abbr, or axis attributes are not allowed.

3. For tables containing data, do th elements appropriately define every row and/or every

column headers? – 7.1 4. For tables containing data, do th elements contain the scope attribute for row and/or column

headers that are not logically placed, e.g. in the first row and first column as applicable? – 7.2

5. For tables containing data, is the summary attribute used to explain the meaning of the table

if it is not otherwise evident from context? – 7.3 6. For tables that are used for layout, are th elements or summary,headers, scope, abbr,

or axis attributes NOT used at all? -7.4 7. For complex tables, do th elements appropriately define row and/or column headers? -8.1 8. For complex tables, does each th element contain an id attribute unique to the page and/or

does each th element and any tdelement that acts as a header for other elements contain a scopeattribute of row, col, rowgroup, or colgroup? – 8.2

9. For complex tables, does any td element that is associated with more than one th element

contain a headers attribute that lists theid attribute for all headers associated with that cell? – 8.3

10. Are the summary attribute and thead and tbody elements used to clarify the table meaning and structure if needed? – 8.4

14.2 Data Tables

1. The th elements must appropriately define every column and/or row headers. 2. Row/Column headers that are not logically placed must contain an appropriate

scope attribute.

3. If the meaning of the table is not evident from its context then a summary attribute is needed.

14.3 Complex Tables

1. Each th element must have and id attribute unique to the page and/or th elements that act as headers for other elements contain a scope attribute of row, col, rowgroup, or colgroup.

2. Any td element associated with more than one th element must contain a headers attribute that lists all ids of headers for that cell.

15 Docs

1. Does a document have a text-only version? If so, does it meet all Section 508 criteria? – 11.1 2. Does the text-only version contain the same exact information as the original document? –

11.2 3. Does the text-only version provide the functionality equivalent to that of the original

document? – 11.3 4. Is an alternative provided for components, e.g. plug-ins & scripts, which are not directly

accessible? – 11.4

16 Plugins and Scripts

1. Is an alternative provided for components, e.g. plug-ins & scripts, which are not directly

accessible? – 11.4 2. Is any content or functionality provided by JavaScript through mouse action also provided

through keyboard-triggered event handlers? – 12.1 3. Are link-type behaviors created with JavaScript on ONLY focusable elements? – 12.2 4. If content or functionality provided by JavaScript can not be provided to assistive technology,

is equivalent content or functionality provided without JavaScript? – 12.3 5. Are links provided to any special readers or plug-ins that are required to interpret page

content? – 13.1 6. Do special readers or plug-ins comply with the requirements of Section 508 paragraphs

§1194.21(a)-(l)? – 13.2

17 Dynamic Media

1. Can automatically updating content be paused, stopped, or hidden by the user or the user

can manually control the timing of the updates, e.g. automatically redirecting or refreshing a page, a news ticker, AJAX updated field, a notification alert, etcetera? – 16.6

2. Can interruptions be postponed or suppressed by the user, e.g. alerts, page updates, etcetera? – 16.7

17.1 Audio

1. Full text transcripts should be provided for all prerecorded audio

17.2 Video

17.3 Moving Images

1. Does any page element NOT flicker at an unhealthy rate, e.g. less than three flashes per

second? – 10.1 2. Does any page NOT contain the marquee and blink elements? – 10.2 3. Can automatically moving, blinking, or scrolling content that lasts longer than 3 seconds be

paused, stopped, or hidden by the user? – 16.5

18 Images

1. Ensure images that convey contextual or complex content have appropriate succinct alternative text in the alt or longdesc attributes in the img element (ie. Links, buttons, help icons – not verbose or vague or redundant to adjacent text)

2. Purely decorative images should have empty or null alternative text (e.g. alt=”” i.e. background images)

3. Images convey contextual relevance to the page 4. Is a correct contrast ratio maintained when CSS is disabled? – 3.4

18.1 Icons

1. Icons and help text

a. Should include alt text b. Should be tabbable (not skipped over)

18.2 Image Maps

1. Area elements should have link destinations correctly titled (title attributes should

not repeat alt text) 2. Are links in server-side image maps repeated elsewhere in the page that are non-graphical,

e.g. a normal list of links? – 5.1 3. Are client-side image maps used instead of server-side image maps? – 6.1 4. Do client-side image maps have appropriate alternative text for the image, as well as each

hot spot region? – 6.2

19 User Guide

19.1 Tour

19.2 Keyboard Shortcuts

20

21 Resources

21.1 Rationale and Glossary

Glossary and Rationale

Description and Help Text: Descriptions, instructions and alternative text must be properly associated with an object or interface element.

Visual proximity is often not sufficient. Assistive technologies must be able to detect the association between the description and/or instructions and the interface element. ....................................................................................... 5

508 Mapping

alt description: 1.1.................................................................................................................................................................................................. 7

Descriptive and/or instructional text: 1194.21(d); 1194.21(f); 1194.22(a); 1194.22(i); 1194.22(l); 1194.22(n); ......................................................................... 5

High color contrast for images of text: 1194.21(e); 1194.21(f); 1194.21(j); 1194.31(b) .................................................................................................................... 4

Purely decorative images: 1.2.................................................................................................................................................................................................. 7

Use descriptive error messages: 508 checklist 14.6 ....................................................................................................................................................................... 4

Example Site Tasks

alt or longdesc attributes in the img element............................................................................................................................ 7

Use descriptive error messages. All Error Messages – Needs to be more descriptive ............................................................................................................ 4

21.2 Index

Aria-labelledby, 5

CODE SNIPPET, 6

Description and Help Text, 5

Form Validation, 5