Posted on

Results Icon Dictionary

Updated: November 7, 2019, to correspond with the latest version of WAVE.

Summary: The Results Icon Dictionary contains all of the Results Icons used in the Pope Tech Scanning Platform. The icons are organized into 6 different scanning results categories. The dictionary explains what each icon means, why it matters for accessibility, how to fix it, and provides additional information on relevant WCAG success criteria.

Preface to the Icon Dictionary

A big thanks to our partners at WebAIM who allowed us to adapt their WAVE documentation for use on the Platform and documentation. The results icons in this dictionary are the same icons that WAVE uses. Much of the documentation for the Results Icon Dictionary was adapted from the WAVE icon index and the accompanying WAVE help page.

Overview of Dictionary Organization

The remainder of the Results Icon Dictionary is organized as follows: The table of contents that provides a brief overview of the six scanning categories. Each Scanning Category is then defined, followed by icons and names (which are all links) of the items contained in that respective category. Following the table of contents are the detailed explanations of each of the individual items (once again, organized by scanning category).

Category Explanation and Table of Contents

The Accessibility Scanning Results are organized in the platform into six categories that are useful for web accessibility monitoring, web page creation, and remediation. The six scanning results categories are:

  1. Errors: Detects 22 accessibility error types. These are errors that need to be fixed.
  2. Contrast Errors: Detects places where there are accessibility contrast errors.
  3. Alerts: Identifies an additional 38 potential accessibility error types that require manual evaluation.
  4. Features: Identifies 12 different commonly used accessibility features.
  5. Structure: Identifies 21 structural elements that are important in accessible web pages.
  6. ARIA: Identifies when is used on web pages.

Errors

Items flagged by the error icon are accessibility errors that need to be fixed. The following 22 accessibility errors types are detected in a Pope Tech Web Accessibility Scan:

Contrast Errors

Pope Tech Web Accessibility Scan detects instances on your web pages where the color contrast is an issue (based on WCAG guidelines). Contrast Errors are accessibility issues. Anytime you see the following contrast error, it should the flagged content should be examined for remediation.

Alerts

Alerts are flagged because they are either accessibility errors or are suspicious code or content. Alerts may or may not be an accessibility error. The accessibility impact can vary based on context. Alerts require manual evaluation. For this reason, items that meet the criteria for this category are classified as an alert. The following are 38 items the Pope Tech Platform will flag as an alert:

Features

The features response category points out when the web pages contain common accessibility features. These are things that improve accessibility if used correctly. The scan identifies the following 12 commonly used accessibility features:

Structure

Using proper structural elements in designing websites, web pages, and content can increase overall web page accessibility. Conversely, the misuse of these structural elements can result in blocked accessibility by Assistive Technologies. The scan identifies the following 21 structural Elements:

ARIA

The ARIA category brings to users attention when ARIA is used.  Most ARIA items require a manual review to see if they are used properly. The scan identifies the following 10 ARIA items:

Icon Details

Icon Details

Missing alternative text

What It Means

Image alternative text is not present.

Why It Matters

Each image must have an alt attribute. Without alternative text, the content of an image will not be available to screen reader users or when the image is unavailable.

What To Do

Add an alt attribute to the image. The attribute value should accurately and succinctly present the content and function of the image. If the content of the image is conveyed in the context or surroundings of the image, or if the image does not convey content or have a function, it should be given empty/null alternative text (alt=””).

The Algorithm… in English

An image does not have an alt attribute.

Standards and Guidelines

What It Means

An image without alternative text results in an empty link.

Why It Matters

Images that are the only thing within a link must have descriptive alternative text. If an image is within a link that contains no text and that image does not provide alternative text, a screen reader has no content to present to the user regarding the function of the link.

What To Do

Add appropriate alternative text that presents the content of the image and/or the function of the link.

The Algorithm… in English

An image without alternative text (missing alt attribute or an alt value that is null/empty or only space characters) is within a link that does not contain text and an image with alternative text.

Standards and Guidelines

Spacer image missing alternative text

What It Means

A layout spacer image (which should have null/empty alternative text) does not have an alt attribute.

Why It Matters

Spacer images are used to maintain layout. They do not convey content and should be given null/empty alternative text (alt=””) so they are not presented to users and are ignored by screen readers.

What To Do

If the image is a spacer image, give the image null/empty alternative text (alt=””). Alternatively, consider using CSS instead of spacer images to control positioning and layout.

The Algorithm… in English

An image is missing an alt attribute and has a width or height of 3 pixels or less or has a file name starting with “spacer.*”, “space.*”, or “blank.*”.

Standards and Guidelines

Image button missing alternative text

What It Means

Alternative text is not present for a form image button.

Why It Matters

Image buttons provide important functionality that must be presented in alternative text. Without alternative text, the function of an image button is not made available to screen reader users or when images are disabled or unavailable.

What To Do

Add appropriate alternative text that presents the function of the image button (e.g., <input src=”button.gif” type=”image” alt=”Submit search”>).

The Algorithm… in English

An image button (<input type=”image”>) does not have an alt attribute or has an alt value that is null/empty (alt=””) or only space characters.

Standards and Guidelines

Image map area missing alternative text

What It Means

Alternative text is not present for an image map area (hot spot).

Why It Matters

Image map areas or clickable hot spots provide important functionality that must be provided in alternative text. Without alternative text, the function of the area is not made available to screen reader users or when images are unavailable.

What To Do

Add a descriptive alt attribute value to each area element. Additionally, ensure that the area elements are listed in the code in a logical, intuitive order (e.g., matching the visual order, alphabetically, etc.).

The Algorithm… in English

An area element does not have the alt attribute or has an alt value that is null/empty (alt=””) or only space characters.

Standards and Guidelines

Image map missing alternative text

What It Means

An image that has hot spots does not have an alt attribute.

Why It Matters

Any content or function of an image that uses an image map (hot spots) and does not have an alt attribute will not be available to screen reader users or if the image is unavailable.

What To Do

Add an alt attribute to the image. Ensure the alt attribute value for the image map image is appropriate. The alternative text is typically null/empty (alt=””), unless the image conveys content not conveyed in the hot spot areas (e.g., “Map of the United States”).

The Algorithm… in English

An image element has the usemap attribute and no alt attribute.

Standards and Guidelines

Invalid longdesc

What It Means

The longdesc attribute is not a URL.

Why It Matters

The longdesc attribute of an image must be a valid URL of a page that contains a description of the image content. A longdesc value that contains image description text will not provide any accessibility information. Due to poor support, a link to the long description content should be used instead of longdesc.

What To Do

Remove the longdesc attribute and provide a link to the long description content. If the longdesc attribute is maintained, ensure the attribute value is a valid URL/filename.

The Algorithm… in English

The longdesc attribute value:
  • is empty
  • is not a URL or filename
  • is a URL or filename with an extension of .jpg, .gif, or .png

Standards and Guidelines

Missing form label

What It Means

A form control does not have a corresponding label.

Why It Matters

If a form control does not have a properly associated text label, the function or purpose of that form control may not be presented to screen reader users. Form labels also provide visible descriptions and larger clickable targets for form controls.

What To Do

If a text label for a form control is visible, use the <label> element to associate it with its respective form control. If there is no visible label, either provide an associated label, add a descriptive title attribute to the form control, or reference the label(s) using aria-labelledby. Labels are not required for image, submit, reset, button, or hidden form controls.

The Algorithm… in English

An <input> (except types of image, submit, reset, button, or hidden), <select>, or <textarea> does not have a properly associated label text. A properly associated label is:
  • a <label> element with a for attribute value that is equal to the id of a unique form control
  • a <label> element that surrounds the form control, does not surround any other form controls, and does not reference another element with its for attribute
  • a non-empty title attribute, or
  • a non-empty aria-labelledby attribute.

Standards and Guidelines

Empty form label

What It Means

A form label is present, but does not contain any content.

Why It Matters

A <label> element that is associated to a form control but does not contain text will not present any information about the form control to the user.

What To Do

Ensure that the form label contains text that describes the function of the associated form control. Labels are not required for image, submit, reset, button, or hidden form controls. If a label is not necessary visually, a descriptive title attribute may be added to the form control.

The Algorithm… in English

A form label is present and associated with an existing form control (using for/id or surrounds the form control), but does not contain any text or images with alternative text.

Standards and Guidelines

Multiple form labels

What It Means

A form control has more than one label associated with it.

Why It Matters

A form control should have at most one associated label element. If more than one label element is associated to the control, assistive technology may not read the appropriate label.

What To Do

Ensure that at most one label element is associated to the form control. If multiple form labels are necessary, use aria-labelledby.

The Algorithm… in English

Two or more <label>s are associated to a single <input> (except types of image, submit, reset, button, or hidden), <select>, or <textarea>.

Standards and Guidelines

Broken ARIA reference

What It Means

An aria-labelledby or aria-describedby reference exists, but the target for the reference does not exist.

Why It Matters

ARIA labels and descriptions will not be presented if the element referenced does not exist in the page.

What To Do

Ensure the element referenced in the aria-labelledby or aria-describedby attribute value is present within the page and presents a proper label or description.

The Algorithm… in English

An element has an aria-labelledby or aria-describedby value that does not match the id attribute value of another element in the page.

Standards and Guidelines

Broken ARIA menu

What It Means

An ARIA menu does not contain required menu items.

Why It Matters

ARIA menus are application menus (like those used in software menu) with a specific keyboard interactions. They are NOT for navigation links on a web site and must contain at least one menuitem, menuitemcheckbox, or menuitemradio element.

What To Do

Ensure that the menu is an application menu and has the appropriate keyboard interactions (menu items are navigated via the arrow keys, not via the Tab key) and internal menu items, otherwise remove the menu role.

The Algorithm… in English

An element with role=”menu” does not contain at least one element with role=”menuitem”, role=”menuitemcheckbox”, or role=”menuitemradio”.

Standards and Guidelines

Missing or uninformative page title

What It Means

The page title is missing or not descriptive.

Why It Matters

A descriptive title helps users understand a page’s purpose or content. Without a proper title, many users (especially those using screen readers or other assistive technology) may have difficulty orienting themselves to the page.

What To Do

Add a brief, descriptive page title.

The Algorithm… in English

The page title is missing, empty, contains only whitespace characters, or begins with “untitled”.

Standards and Guidelines

Document language missing

What It Means

The language of the document is not identified.

Why It Matters

Identifying the language of the page allows screen readers to read the content in the appropriate language. It also facilitates automatic translation of content.

What To Do

Identify the document language using the <html lang> attribute (e.g., <html lang=”en”>).

The Algorithm… in English

The <html lang> attribute is missing or is empty.

Standards and Guidelines

Page refreshes or redirects

What It Means

The page is set to automatically change location or refresh using a <meta> tag.

Why It Matters

Pages that automatically change location or refresh pose significant usability issues, particularly for screen reader and keyboard users.

What To Do

Remove the <meta> refresh and give the user control over time-sensitive content changes.

The Algorithm… in English

A <meta http-equiv=”refresh”> tag is present.

Standards and Guidelines

Empty heading

What It Means

A heading contains no content.

Why It Matters

Some users, especially keyboard and screen reader users, often navigate by heading elements. An empty heading will present no information and may introduce confusion.

What To Do

Ensure that all headings contain informative content.

The Algorithm… in English

A heading element is present that contains no text (or only spaces) and no images with alternative text.

Standards and Guidelines

Empty button

What It Means

A button is empty or has no value text.

Why It Matters

When navigating to a button, descriptive text must be presented to screen reader users to indicate the function of the button.

What To Do

Place text content within the <button> element or give the <input> element a value attribute.

The Algorithm… in English

A <button> element is present that contains no text content (or alternative text), or an <input type=”submit”>, <input type=”button”>, or <input type=”reset”> has an empty or missing value attribute.

Standards and Guidelines

What It Means

A link contains no text.

Why It Matters

If a link contains no text, the function or purpose of the link will not be presented to the user. This can introduce confusion for keyboard and screen reader users.

What To Do

Remove the empty link or provide text within the link that describes the functionality and/or target of that link.

The Algorithm… in English

An anchor element has an href attribute, but contains no text (or only spaces) and no images with alternative text.

Standards and Guidelines

What It Means

A skip navigation link exists, but the target for the link does not exist or the link is not keyboard accessible.

Why It Matters

A link to jump over navigation or jump to the main content of the page assists keyboard users only if the link is properly functioning and is keyboard accessible.

What To Do

Ensure that the target for the link exists and that the link is not hidden with CSS display:none or visibility:hidden.

The Algorithm… in English

An in-page link contains the words “skip” or “jump” and is hidden with CSS display:none or visibility:hidden, or the link has an href attribute that does not match the id value of another element within the page or the name attribute value of an anchor element within the page.

Standards and Guidelines

Empty table header

What It Means

A <th> (table header) contains no text.

Why It Matters

The <th> element helps associate table cells with the correct row/column headers. A <th> that contains no text may result in cells with missing or incorrect header information.

What To Do

If the table cell is a header, provide text within the cell that describes the column or row. If the cell is not a header or must remain empty (such as the top-left cell in a data table), make the cell a <td> rather than a <th>.

The Algorithm… in English

A <th> element does not contain any text (or contains only spaces) and no images with alternative text.

Standards and Guidelines

What It Means

Blinking content is present.

Why It Matters

Blinking content can be distracting and confusing to users, particularly those with certain cognitive disabilities.

What To Do

Remove the blinking effect (<blink> element or text-decoration:blink style). Important text can be styled in other ways.

The Algorithm… in English

A non-empty <blink> element or other text has CSS text-decoration:blink styling.

Standards and Guidelines

Marquee

What It Means

A <marquee> element is present.

Why It Matters

A marquee element presents scrolling text that the user cannot stop. Scrolling animated content can be distracting and confusing to users, particularly for those with certain cognitive disabilities.

What To Do

Remove the marquee element. If content must scroll, use an alternative scrolling mechanism that allows the user to pause or stop the animation.

The Algorithm… in English

A <marquee> element is present.

Standards and Guidelines

Very Low Contrast

What It Means

Very low contrast between foreground and background colors.

Why It Matters

Adequate contrast is necessary for all users, especially users with low vision.

What To Do

Increase the contrast between the foreground (text) color and the background color. Large text (larger than 18 point or 14 point bold) does not require as much contrast as smaller text.

The Algorithm… in English

Text is present that has a contrast ratio less than 4.5:1, or large text (larger than 18 point or 14 point bold) has a contrast ratio less than 3:1. Elements with background images must have a background color defined that provides adequate contrast when images are disabled or unavailable.

Standards and Guidelines

Suspicious alternative text

What It Means

Alternative text is likely insufficient or contains extraneous information.

Why It Matters

If the alternative text for an image does not provide the same content or information conveyed by the image, that content will not be available to screen reader users and when images are unavailable.

What To Do

Ensure that the alternative text for the image or image input provides a succinct, yet equivalent alternative to the content and function of the image. Screen readers and browser presentation inform the user that the object is an image, so alternative text of “image of…” (and similar) should be avoided. If the image does not convey content or if the content is presented in nearby text (e.g., a caption), null/empty alternative text (alt=””) is appropriate.

The Algorithm… in English

The alt text value of an image or image button:
  • begins with “graphic of”, “bullet”, or “image of”,
  • ends with “image” or “graphic”,
  • contains only space characters (alt=” “),
  • is an image file name (e.g. alt=”photo.gif”), or
  • is one of the following: “image”, “graphic”, “photo”, “photograph”, “drawing”, “painting”, “artwork”, “logo”, “bullet”, “button”, “arrow”, “more”, “spacer”, “blank”, “chart”, “table”, “diagram”, “graph”, or “*”.

Standards and Guidelines

Redundant alternative text

What It Means

The alternative text for an image is the same as nearby or adjacent text.

Why It Matters

Alternative text that is the same as nearby or adjacent text will be presented multiple times to screen readers or when images are unavailable.

What To Do

Change either the alternative text or the adjacent text to eliminate the redundancy. In most cases, you can give the image empty/null alternative text (alt=””) because the content of the image is already provided in context through text. Linked images may often be combined with the adjacent text into one link, in which case the image may be given null/empty alternative text (alt=””).

The Algorithm… in English

The alternative text is the same as text that is within 15 characters of the image.

Standards and Guidelines

A nearby image has the same alternative text

What It Means

Two images near each other have the same alternative text.

Why It Matters

When two images have the same alternative text, this often causes redundancy or indicates incorrect alternative text.

What To Do

Ensure that the alternative text for each image or image button is appropriate while removing unnecessary redundancy. If the content of the image is already conveyed elsewhere (through text or the alternative text of a nearby image) or if the image does not convey content, the image may generally be given empty/null alternative text (alt=””). Image buttons always convey a specific function, and thus cannot be given null alternative text.

The Algorithm… in English

The same alternative text (case insensitive, but not null/empty) is present for two images or image buttons (<input type=’image’>) near each other (no more than 2 other images separate them).

Standards and Guidelines

Long alternative text

What It Means

An image has very long alternative text.

Why It Matters

Alternative text should be succinct, yet descriptive of the content and function of an image. Lengthy alternative text (more than around 100 characters) often indicates that extraneous content or content that is not available to sighted users is being presented.

What To Do

Ensure the alternative text is succinct, yet descriptive. Ensure that no content is being presented in alternative text that is not available to sighted users viewing the image. When possible, either shorten the alternative text or provide the text alternative via another method (e.g., in text near the image, through a separate description page, etc.).

The Algorithm… in English

The image’s alt attribute value is more than 100 characters. Note that the 100 character limit is a rough and somewhat arbitrary length. For images that present complex content or lengthy text, alternative text longer than 100 characters may be appropriate.

Standards and Guidelines

Long description

What It Means

The longdesc attribute is present.

Why It Matters

Because of poor support, the longdesc attribute should not be used.

What To Do

Because of poor browser support for longdesc, it should not be used to provide the description of complex images. The description may be provided:
  • in the alt attribute, if possible. Alt text should be succinct (generally no more than ~100 characters).
  • in nearby text (e.g., a caption, data table, etc.)
  • via a link to a separate description page that contains an accurate and equivalent description.

The Algorithm… in English

An image has a longdesc attribute containing a valid URL.

Standards and Guidelines

Orphaned form label

What It Means

A form label is present, but it is not correctly associated with a form control.

Why It Matters

An incorrectly associated label does not provide functionality or information about the form control to the user. It usually indicates a coding or other form labeling issues.

What To Do

Properly associate the label with its corresponding form control. If there is no corresponding form control, remove the label. Labels are not appropriate for image, submit, reset, button, or hidden form controls.

The Algorithm… in English

A <label> element:
  • does not surround a form control and the for attribute is missing/empty
  • references an element that is not present in the page
  • references an element that is not an <input>, <select> or <textarea> element
  • references an <input> element with image, submit, reset, button, or hidden type

Standards and Guidelines

Unlabeled form element with title

What It Means

A form control does not have a label, but has a title.

Why It Matters

The title attribute value for unlabeled form controls will be presented to screen reader users. However, a properly associated text label provides better usability and accessibility and should be used unless the purpose of the form control is intuitive without the label.

What To Do

If a visible text label is available for the form control, associate the text label to the form control using the label element. This provides additional functionality for end users because if the label is clicked it will set focus to the form control. If the form control is intuitive without a <label>, the title attribute value may be used. Note that the title attribute value will not generally be read by a screen reader if the control has a label and may not be available to sighted users, particularly keyboard-only users.

The Algorithm… in English

An <input> (except types of image, submit, reset, button, or hidden), <textarea>, or <select> element has a non-empty title attribute value and is missing a label or valid aria-labelledby reference.

Standards and Guidelines

Missing fieldset

What It Means

A group of check boxes or radio buttons is not enclosed in a fieldset.

Why It Matters

A fieldset provides a visual and structural grouping of related form elements. It is typically necessary for groups of check boxes or radio buttons where a higher level description (called a legend) is necessary to understand the function of the check boxes or radio buttons. The description will be identified by a screen reader only if provided in a fieldset legend.

What To Do

Determine whether the grouping of check boxes or radio buttons has or needs text that explains the purpose of the check boxes or radio button grouping. If so, mark up the group within a fieldset and put the group description in a legend element.

The Algorithm… in English

Two or more checkbox or radio input elements within a form have the same name value, but are not enclosed in a fieldset.

Standards and Guidelines

Fieldset missing legend

What It Means

A fieldset does not have a legend.

Why It Matters

A fieldset legend presents a description of the form elements within a fieldset and is especially useful to screen reader users. A legend should be provided when a higher level description is necessary for groups of check boxes, radio buttons, or other form controls.

What To Do

If a higher level description is necessary for the user to understand the function or purpose of the controls within the fieldset, provide this description within the <legend>. If this description or grouping is not necessary, the fieldset should probably be removed. Note that the legend is repeated to screen reader users for each form control within the fieldset.

The Algorithm… in English

A fieldset does not have a legend or the legend is empty.

Standards and Guidelines

No heading structure

What It Means

The page has no headings.

Why It Matters

Headings (<h1>-<h6>) provide important document structure, outlines, and navigation functionality to assistive technology users.

What To Do

Provide a clear, consistent heading structure, generally one <h1> and sub-headings as appropriate. Except for very simple pages, most web pages should have a heading structure.

The Algorithm… in English

No <h1>-<h6> elements are present in the page.

Standards and Guidelines

Missing first level heading

What It Means

A page does not have a first level heading.

Why It Matters

Headings facilitate page navigation for users of many assistive technologies. They also provide semantic and visual meaning and structure to the document. A first level heading (<h1>) should be present on nearly all pages. It should contain the most important heading on the page (generally the document title).

What To Do

If the page presents a main heading, place it within an <h1> element. Add other sub-headings as necessary.

The Algorithm… in English

A page does not have an <h1> element.

Standards and Guidelines

No page regions

What It Means

No page regions or ARIA landmarks were found.

Why It Matters

Regions and ARIA landmarks identify significant page areas. Most web pages should have regions defined, particularly for the main content area.

What To Do

If the page has visual regions or significant page areas, ensure the regions are defined with header, nav, main, footer, etc. elements.

The Algorithm… in English

No header, nav, main, footer, or aside HTML regions, or banner, navigation, main, or contentinfo landmark roles were present in the page.

Standards and Guidelines

Skipped heading level

What It Means

A heading level is skipped.

Why It Matters

Headings provide document structure and facilitate keyboard navigation by users of assistive technology. These users may be confused or experience difficulty navigating when heading levels are skipped.

What To Do

Restructure the document headings to ensure that heading levels are not skipped.

The Algorithm… in English

A heading level is skipped (e.g., an <h1> is followed by an <h3>, with no intermediate <h2>). Note that an <h1> is not required to be the first heading within the document.

Standards and Guidelines

Possible heading

What It Means

Text appears to be a heading but is not a heading element.

Why It Matters

Heading elements (<h1>-<h6>) provide important document structure, outlines, and navigation functionality to assistive technology users. If heading text is not a true heading, this information and functionality will not be available for that text.

What To Do

If the paragraph is a section heading, use a heading element instead (<h1>-<h6>).

The Algorithm… in English

A <p> element contains less than 50 characters and is either:
  • 20 pixels or bigger, or
  • 16 pixels or bigger and bold and/or italicized.

Standards and Guidelines

Layout table

What It Means

A layout table is present.

Why It Matters

Layout tables exist merely to position content visually – to create columns, insert spacing, or align content neatly for sighted users. Their content is not at all tabular in nature. Layout tables should not be used in HTML5. They can introduce reading and navigation order issues. Screen readers may interpret them as data tables (i.e., announcing column and row numbers), especially if they contain table header (<th>) cells. This introduces significant overhead on screen reader users.

What To Do

In almost every case, layout tables can be replaced with other HTML elements and styled with CSS to achieve the desired visual presentation. If the table contains tabular data, provide appropriate header (<th>) cells. If the layout table remains, verify that the reading and navigation order of table content (based on underlying source code order) is logical and give it role=”presentation” to ensure it is not identified as a table to screen reader users.

The Algorithm… in English

A <table> element is present that does not contain any header (<th>) cells.

Standards and Guidelines

Possible table caption

What It Means

Text appears to be a table caption, but is not a caption element.

Why It Matters

A table caption should be associated with a table using the <caption> element so it will be read by a screen reader with the table content.

What To Do

If the text is a description of the table, associate the text with the table using the <caption> element (<caption> should be the first element within the <table>).

The Algorithm… in English

A data table (has at least one table header) that does not already have a caption has: – A colspan attribute value of 3 or greater on the first cell of the table. – A

element immediately before the table that contains less than 50 characters or contains less than 100 characters and is bold and/or centered.

Standards and Guidelines

What It Means

A link to another location within the page is present but does not have a corresponding target.

Why It Matters

A link to jump to another position within the the page assists users in navigating the web page, but only if the link target exists.

What To Do

Ensure that the target for the link exists or remove the the same-page link.

The Algorithm… in English

An in-page link has an href attribute (starting with a #), but does not match either the id value of another element or the name attribute value of an anchor element within the page.

Standards and Guidelines

What It Means

Link text contains extraneous text or may not make sense out of context.

Why It Matters

Links, which are often read out of context, should clearly describe the destination or function of the link. Ambiguous text, text that does not make sense out of context, and extraneous text (such as “click here”) can cause confusion and should be avoided.

What To Do

Where appropriate, reword the link text so that it is more descriptive of its destination when read out of context. Remove any extraneous text (such as “click here”).

The Algorithm… in English

A link (including alt text of linked images) contains the phrase “click here” or “click”, or the link text is “click here”, “here”, “more”, “more…”, “details”, “more details”, “link”, “this page”, “continue”, “continue reading”, “read more”, or “button”.

Standards and Guidelines

What It Means

Adjacent links go to the same URL.

Why It Matters

When adjacent links go to the same location (such as a linked product image and an adjacent linked product name that go to the same product page) this results in additional navigation and repetition for keyboard and screen reader users.

What To Do

If possible, combine the redundant links into one link and remove any redundant text or alternative text (for example, if a product image and product name are in the same link, the image can usually be given alt=””).

The Algorithm… in English

Two adjacent links go to the same URL.

Standards and Guidelines

What It Means

A link to a Microsoft Word document is present.

Why It Matters

Unless authored with accessibility in mind, Microsoft Word documents often have accessibility issues. Additionally, Word documents are typically viewed using a separate application, and can thus cause confusion and navigation difficulties.

What To Do

Ensure that the Word document is natively accessible. Additionally, inform the user that the link will open a Word document. Because Word documents have limitations in accessibility (particularly for complex content) and require a separate program, HTML content should usually be used in place of or in addition to the Word document.

The Algorithm… in English

A link to a .doc or .docx file is present.

Standards and Guidelines

  • None

What It Means

A link to a Microsoft Excel spreadsheet is present.

Why It Matters

Unless authored with accessibility in mind, Microsoft Excel spreadsheets often have accessibility issues. Additionally, Excel documents are typically viewed using a separate application, and can thus cause confusion and navigation difficulties.

What To Do

Ensure the Excel spreadsheet is natively accessible. Additionally, inform the user that the link will open an Excel spreadsheet. Because Excel spreadsheets have limitations in accessibility (particularly for complex content) and require a separate program, HTML content should usually be used in place of or in addition to the Excel spreadsheet.

The Algorithm… in English

A link to a .xls or .xlsx file is present.

Standards and Guidelines

  • None

What It Means

A link to a Microsoft PowerPoint presentation is present.

Why It Matters

Unless authored with accessibility in mind, PowerPoint documents often have accessibility issues. Additionally, PowerPoint documents are typically viewed using a separate application, and can thus cause confusion and navigation difficulties.

What To Do

Ensure the PowerPoint presentation is natively accessible. Additionally, inform the user that the link will open a PowerPoint document. Because PowerPoint documents have limitations in accessibility (particularly for complex content) and require a separate program, HTML content or an alternative accessible version (e.g., tagged PDF) should usually be used in place of or in addition to the PowerPoint presentation.

The Algorithm… in English

A link to a .ppt, .pptx, .pps, or .ppsx file is present.

Standards and Guidelines

  • None

What It Means

A link to a PDF document is present.

Why It Matters

Unless authored with accessibility in mind, PDF documents often have accessibility issues. Additionally, PDF documents are typically viewed using a separate application or plug-in, and can thus cause confusion and navigation difficulties.

What To Do

Ensure the PDF document is natively accessible. Additionally, inform the user that the link will open a PDF document. Because PDF documents may have limitations in accessibility (particularly for complex content) and require a separate program, HTML content should often be used in place of or in addition to the PDF document.

The Algorithm… in English

A link to a .pdf file is present.

Standards and Guidelines

  • None

What It Means

A link to a non-HTML document is present.

Why It Matters

Unless authored with accessibility in mind, documents that are not HTML often have accessibility issues. Additionally, these documents are typically viewed using a separate application, and can thus cause confusion and navigation difficulties.

What To Do

Ensure the document is authored to be accessible, if possible. Additionally, inform the user that the link will open in a separate program. Because these documents have limitations in accessibility (particularly for complex content) and require a separate program, an accessible format should usually be used in place of or in addition to the document.

The Algorithm… in English

A link to a .rtf, .wpd, .ods, .odt, .odp, .sxw, .sxc, .sxd, .sxi, .pages, or .key file is present. Word, PowerPoint, Excel, and PDF are identified with separate icons.

Standards and Guidelines

  • None

Audio/Video

What It Means

An audio or video file or link is present.

Why It Matters

Audio content must be presented in a text format to be fully accessible to users who are deaf and hard of hearing. Video content with audio must have synchronized captions and a transcript. Audio-only content must have a transcript.

What To Do

For video content, ensure that synchronized captioning and a transcript is provided. For audio-only content, ensure that a transcript is provided.

The Algorithm… in English

An embedded QuickTime, Windows Media Player, or RealPlayer movie is present or a link is present to a file with one of the following extensions: 3gp, aif, aiff, asf, asx, avi, flv, m4a, m4p, mov, mp2, mp3, mp4, mpa, mpeg, mpeg2, mpg, mpv, ogg, ogv, qtl, ra, ram, smi, smil, wav, wax, webm, wma, wmp, or wmx.

Standards and Guidelines

HTML5 video or audio

What It Means

A <video> or <audio> element is present.

Why It Matters

<video> defines video, such as a movie clip or other video streams. <audio> defines sound, such as music or other audio streams. Audio content must be presented in a text format to be fully accessible to users who are deaf and hard of hearing. Video content with audio must have synchronized captions and a transcript. Audio-only content must have a transcript.

What To Do

For video content with audio, ensure that synchronized captioning and a transcript is provided. For audio-only content, ensure that a transcript is provided.

The Algorithm… in English

A <video> or <audio> element is present. Note that WAVE does not analyze fall-back content within the <video> or <audio> element. This content should be accessible because it will be presented to the user if the video or audio content is not supported.

Standards and Guidelines

Flash

What It Means

Flash content is present.

Why It Matters

Flash content, if not authored to be accessible, will typically introduce significant accessibility issues.

What To Do

If the Flash object does not present content, hide it from screen readers. If content is presented, provide an HTML alternative and/or make the Flash object natively accessible, including providing captions/transcripts when necessary and ensuring that the Flash object is keyboard-accessible.

The Algorithm… in English

An <object> element is present that has a classid attribute value of “clsid:D27CDB6E-AE6D-11cf-96B8-444553540000” or a type attribute value of “application/x-shockwave-flash”, or an <embed> element is present that has a src attribute value of a .swf file or a type attribute value of “application/x-shockwave-flash”.

Standards and Guidelines

Java Applet

What It Means

A Java applet is present.

Why It Matters

Java applets will typically introduce significant accessibility issues.

What To Do

Where possible, replace the Java content with a more accessible format. If Java is necessary, author the applet to support accessibility to the extent possible.

The Algorithm… in English

An <applet> element is present.

Standards and Guidelines

  • None

Plugin

What It Means

An unidentified plugin is present.

Why It Matters

Plugins allow the introduction of non-HTML content, media players, etc. Because of limitations in non-HTML content, these often introduce accessibility issues.

What To Do

Provide an HTML alternative or ensure the plugin content is accessible. Provide a link to download any required software.

The Algorithm… in English

An <object> or <embed> element is present that is not identified as Flash, Quicktime, RealPlayer, or Windows Media Player.

Standards and Guidelines

  • None

Noscript element

What It Means

A <noscript> element is present.

Why It Matters

Content within <noscript> is presented if JavaScript is disabled. Because nearly all users (including users of screen readers and other assistive technologies) have JavaScript enabled, <noscript> cannot be used to provide an accessible version of inaccessible scripted content.

What To Do

Ensure that scripted content is accessible. The <noscript> content will be presented to very few users, but must be accessible if used.

The Algorithm… in English

A <noscript> element is present.

Standards and Guidelines

  • None

Device dependent event handler

What It Means

An event handler is present that may not be accessible.

Why It Matters

The JavaScript events in use do not appear to be accessible to both mouse and keyboard users. To be fully accessible, critical JavaScript interaction should be device independent.

What To Do

Ensure that critical functionality and content is accessible by using a device independent event handler (which responds to both keyboard and mouse) or by using both a mouse dependent and a keyboard dependent event handler.

The Algorithm… in English

One of the following is present:
  • an onmouseover event but not an onfocus event
  • an onclick event on something other than a link, form control, or element with a tabindex value of 0
  • ondblclick

Standards and Guidelines

  • None

JavaScript jump menu

What It Means

A JavaScript jump menu may be present.

Why It Matters

A JavaScript jump menu is a select element that triggers a new web page with the onchange event handler. When navigating with the keyboard, each change in the select menu triggers a page change in some web browsers, thus making navigation very difficult.

What To Do

If the onchange event handler triggers a new web page, eliminate the JavaScript jump menu and allow the user to change the select menu, then activate an adjacent button to trigger the new page.

The Algorithm… in English

The onchange attribute is present on a <select> element.

Standards and Guidelines

Accesskey

What It Means

An accesskey attribute is present.

Why It Matters

Accesskey provides a way to define shortcut keys for web page elements. Accesskeys often conflict with user or assistive technology shortcut keys and should be avoided or implemented with care.

What To Do

Remove the accesskey or be aware that the accesskey may conflict with user shortcut keys.

The Algorithm… in English

An element has an accesskey attribute.

Standards and Guidelines

Tabindex

What It Means

A positive tabindex value is present.

Why It Matters

Tabindex values of 1 or greater specify an explicit tab/navigation order for page elements. Because it modifies the default tab order, cause confusion, and result in decreased keyboard accessibility, it should be avoided.

What To Do

If the natural tab order is already logical, remove the tabindex. Otherwise, consider restructuring the page so that tabindex is not needed. If tabindex is maintained, ensure that the resulting navigation is logical and complete.

The Algorithm… in English

A tabindex attribute is present and has a positive value.

Standards and Guidelines

Very small text

What It Means

Text is very small.

Why It Matters

Text which is very small is difficult to read, particularly for those with low vision.

What To Do

Increase the text to a more readable size.

The Algorithm… in English

Text is present that is sized 10 pixels or smaller.

Standards and Guidelines

  • None

Justified text

What It Means

Fully justified text is present.

Why It Matters

Large blocks of justified text can negatively impact readability due to varying word/letter spacing and ‘rivers of white’ that flow through the text.

What To Do

Remove the full justification from the text.

The Algorithm… in English

A <p>, <div>, or <td> element has more than 500 characters and is styled with text-align:justify.

Standards and Guidelines

  • None

Underlined text

What It Means

Underlined text is present.

Why It Matters

Underlines almost universally indicates linked text. Consider removing the underline from the non-link text. Other styling (e.g., bold or italics) can be used to differentiate the text.

What To Do

Unless there is a distinct need for the underlined text, remove the underline from it.

The Algorithm… in English

A <u> element is present.

Standards and Guidelines

  • None

Redundant title text

What It Means

Title attribute text is the same as text or alternative text.

Why It Matters

The title attribute value is used to provide advisory information. It typically appears when the users hovers the mouse over an element. The advisory information presented should not be identical to or very similar to the element text or alternative text.

What To Do

In most cases the title attribute can be removed, otherwise modify it to provide advisory, but not redundant information. Note that the title text may or may not be read by a screen reader and is typically inaccessible to sighted keyboard users.

The Algorithm… in English

A title attribute value is identical to element text or image alternative text.

Standards and Guidelines

  • None

Alternative text

What It Means

Image alternative text is present.

Why It Matters

Alternative text presents the content or function of an image to screen reader users or in other situations where images cannot be seen or are unavailable.

What To Do

Ensure that the alternative text conveys the content and function of the image accurately and succinctly. The alt attribute should be equivalent, accurate, and succinct.

The Algorithm… in English

A non-empty alt attribute is present on an image.

Standards and Guidelines

Null or empty alternative text

What It Means

Alternative text is null or empty (alt=””).

Why It Matters

If an image does not convey content or if the content of the image is conveyed elsewhere (such as in a caption or nearby text), the image should have empty/null alternative text (alt=””) to ensure that it is ignored by a screen reader and is hidden when images are disabled or unavailable.

What To Do

Ensure that the image does not convey content or that the content of the image is conveyed in nearby text (e.g., a caption).

The Algorithm… in English

An image has alt=””.

Standards and Guidelines

Null or empty alternative text on spacer

What It Means

Alternative text is null or empty (alt=””) on a spacer image.

Why It Matters

Spacer images are used to control layout or positioning. Because they do not convey content, they should be given empty/null alternative text (alt=””) to ensure that the content is not presented to screen reader users and is hidden when images are disabled or unavailable.

What To Do

Ensure that the image is a spacer image and that it does not convey content. Consider using CSS instead of spacer images for better control of positioning and layout.

The Algorithm… in English

An images with width and/or height of 3 pixels or less or file name of spacer.*, space.*, or blank.* has empty/null alt attribute value (alt=””).

Standards and Guidelines

What It Means

Alternative text is present for an image that is within a link.

Why It Matters

Including appropriate alternative text on an image within a link ensures that the function and purpose of the link and the content of the image is available to screen reader users or when images are unavailable.

What To Do

Ensure that the alternative text presents the content of the image and/or the function of the link. If the full content and function of the link is presented in text within the link (an image and a text caption both within the same link, for example), then the image should generally be given empty/null alternative text (alt=””) to avoid redundancy.

The Algorithm… in English

An image element has non-empty alternative text, is within a link, and no other text (or images with alternative text) is present within the link.

Standards and Guidelines

Image button with alternative text

What It Means

Alternative text is present for an image input element.

Why It Matters

Providing the functionality of image buttons in alternative text ensures that the button function is available to all users.

What To Do

Ensure that the alt attribute value presents the content and function of the image input element. If the image presents text, typically this text should be provided in the alt attribute.

The Algorithm… in English

An <input type=”image”> element has a non-empty alt attribute value.

Standards and Guidelines

Image map with alternative text

What It Means

An alt attribute is present for an image that has hot spots.

Why It Matters

If an image that uses an image map provides content or a function that is not already available through the hot spots (and their respective alternative texts), that information must be in the image’s alt attribute in order for it to be available to screen reader users or when images are disabled.

What To Do

Ensure that the alternative text for the image map image is appropriate. The alternative text is typically empty (alt=””), unless the image conveys content not conveyed in the hot spot areas (e.g., “Map of the United States”).

The Algorithm… in English

An <img> element has both usemap and alt attributes.

Standards and Guidelines

Image map area with alternative text

What It Means

Alternative text is present for an image map area (hot spot).

Why It Matters

Presenting the functionality of image map areas (hot spots) in the <area> element’s alt attribute value ensures that this information is presented to screen reader users or when images are disabled or unavailable.

What To Do

Ensure the alternative text for the area element describes the function of the image map hot spot. Additionally, ensure that the area elements are listed in the code in a logical, intuitive order (e.g., matching the visual order, alphabetically, etc.).

The Algorithm… in English

An image uses an image map containing an area element with a non-empty alt attribute value.

Standards and Guidelines

Form label

What It Means

A form label is present and associated with a form control.

Why It Matters

A properly associated form label is presented to a screen reader user when the form control is accessed. Additionally, a label can be clicked with the mouse to set focus to the form control.

What To Do

Ensure that the label is accurate, descriptive, succinct, and that it is associated with the correct form control element.

The Algorithm… in English

A <label> element is present and properly associated to <input> (except types of image, submit, reset, button, or hidden), <textarea>, or <select> element.

Standards and Guidelines

Fieldset

What It Means

A fieldset is present.

Why It Matters

A fieldset provides a visual and structural grouping of related form elements. If present, a fieldset legend presents a description of the grouped form elements to screen reader users. A fieldset and legend are typically necessary for groups of check boxes or radio buttons.

What To Do

Ensure that the fieldset encloses the proper form elements. Most fieldsets should have an accurate, descriptive, and succinct legend. Note that the legend is repeated to screen reader users for each form control within the fieldsets.

The Algorithm… in English

A fieldset element is present.

Standards and Guidelines

What It Means

A link is present which allows users to skip over navigation or other content.

Why It Matters

A link that provides functionality for the user to jump over navigation or other elements or jump to the main content of the page greatly assists keyboard users in navigating the web page.

What To Do

Ensure that the link is functioning properly and that the link text adequately describes the link functionality. If the skip link is hidden from sighted users, it should be made visible within the page when it has keyboard focus and must be accessible via the keyboard (do not use CSS display:none or visibility:hidden).

The Algorithm… in English

An in-page link:
  • starts with the words “skip” or “jump”
  • has an href attribute value and that value matches the id value of another element within the page or the name attribute value of an anchor element within the page.
  • is NOT hidden with CSS display:none or visibility:hidden (this would result in a inaccessible “skip” link).

Standards and Guidelines

What It Means

A target for a “skip” link is present.

Why It Matters

A “skip” target identifies the location within the page where reading and navigation will resume after a “skip” link is activated.

What To Do

Ensure that the element is at the appropriate place within the page.

The Algorithm… in English

An id value for any element or a name value for an anchor element matches the href value of a “skip” link within the page.

Standards and Guidelines

Element language

What It Means

The language of a page element or part is identified.

Why It Matters

Identifying the language of an element or portion of page that is in a different language than the page itself allows screen readers to read the content appropriately.

What To Do

Ensure the lang attribute is necessary (it is different than the page’s language) and the attribute value is a valid language code.

The Algorithm… in English

An element has a non-empty lang attribute value.

Standards and Guidelines

Heading level 1

What It Means

A first level heading (<h1> element) is present.

Why It Matters

Headings facilitate page navigation for users of assistive technologies. They also provide semantic and visual meaning and structure to the document. First level headings should contain the most important heading(s) on the page (generally the document title).

What To Do

Ensure that the text in question is truly a heading and that it is structured correctly in the page outline.

The Algorithm… in English

An <h1> element is present.

Standards and Guidelines

Heading level 2

What It Means

A second level heading (<h2> element) is present.

Why It Matters

Headings facilitate page navigation for users of assistive technologies. They also provide semantic and visual meaning and structure to the document.

What To Do

Ensure that the text in question is truly a heading and that it is structured correctly in the page outline.

The Algorithm… in English

An <h2> element is present.

Standards and Guidelines

Heading level 3

What It Means

A third level heading (<h3> element) is present.

Why It Matters

Headings facilitate page navigation for users of assistive technologies. They also provide semantic and visual meaning and structure to the document.

What To Do

Ensure that the text in question is truly a heading and that it is structured correctly in the page outline.

The Algorithm… in English

An <h3> element is present.

Standards and Guidelines

Heading level 4

What It Means

A fourth level heading (<h4> element) is present.

Why It Matters

Headings facilitate page navigation for users of assistive technologies. They also provide semantic and visual meaning and structure to the document.

What To Do

Ensure that the text in question is truly a heading and that it is structured correctly in the page outline.

The Algorithm… in English

An <h4> element is present.

Standards and Guidelines

Heading level 5

What It Means

A fifth level heading (<h5> element) is present.

Why It Matters

Headings facilitate page navigation for users of assistive technologies. They also provide semantic and visual meaning and structure to the document.

What To Do

Ensure that the text in question is truly a heading and that it is structured correctly in the page outline.

The Algorithm… in English

An <h5> element is present.

Standards and Guidelines

Heading level 6

What It Means

A sixth level heading (<h6> element) is present.

Why It Matters

Headings facilitate page navigation for users of assistive technologies. They also provide semantic and visual meaning and structure to the document.

What To Do

Ensure that the text in question is truly a heading and that it is structured correctly in the page outline.

The Algorithm… in English

An <h6> element is present.

Standards and Guidelines

Ordered list

What It Means

An ordered (numbered) list (<ol> element) is present.

Why It Matters

Ordered lists present a group of related sequential items. Users of assistive technologies can navigate by and within lists.

What To Do

Ensure that an ordered (numbered) list is appropriate for the context. If list items are parallel or the order of the items is not important, an unordered list (<ul>) is likely more appropriate.

The Algorithm… in English

An <ol> element is present.

Standards and Guidelines

Unordered list

What It Means

An unordered (bulleted) list (<ul> element) is present.

Why It Matters

Ordered lists present a group of related, parallel items. Users of many assistive technologies can navigate by and within lists.

What To Do

Ensure that an unordered (bulleted) list is appropriate for the context. If list items are sequential or numbered, an ordered list (<ol>) is likely more appropriate.

The Algorithm… in English

A <ul> element is present.

Standards and Guidelines

Definition/description list

What It Means

A definition/description list (<dl> element) is present.

Why It Matters

Definition lists (called description lists in HTML5) present the descriptions for terms or name/value pairs. Users of many assistive technologies can navigate by and within lists.

What To Do

Ensure that the list is appropriate for the context (it is used for definitions or name/value pairs) and that definition terms (<dt>) and descriptions (<dd>) are provided.

The Algorithm… in English

A <dl> element is present.

Standards and Guidelines

What It Means

A <header> element or banner landmark is present.

Why It Matters

Headers identify page introduction or navigation. They typically surrounds the site or page name, logo, top navigation, or other header content. Headers facilitate page semantics and navigation.

What To Do

Ensure the header surrounds and defines page header content.

The Algorithm… in English

A <header> element or role=”banner” is present.

Standards and Guidelines

What It Means

A <nav> element or navigation landmark is present.

Why It Matters

The navigation identifies a section of navigation links and can facilitate page semantics and navigation.

What To Do

Ensure the element defines page navigation. Multiple navigation elements on one page can be differentiated with ARIA labels.

The Algorithm… in English

A <nav> element or role=”navigation” is present.

Standards and Guidelines

What It Means

An ARIA search landmark is present.

Why It Matters

The search landmark identifies the search area within the page and facilitates keyboard navigation to the search area.

What To Do

Ensure the search landmark is implemented properly and surrounds the search area of the page.

The Algorithm… in English

An element has role=”search”.

Standards and Guidelines

Main content

What It Means

A <main> element or main landmark is present.

Why It Matters

The <main> element or role=”main” attribute identifies the main content for the page. This facilitate page semantics and navigation.

What To Do

Ensure the element surrounds and defines page main content.

The Algorithm… in English

A <main> element or role=”main”is present.

Standards and Guidelines

Aside

What It Means

An <aside> element or complementary landmark is present.

Why It Matters

An aside identifies secondary, related, or complementary content. It is typically presented in a sidebar.

What To Do

Ensure the aside surrounds and defines secondary, related, or complementary content.

The Algorithm… in English

An <aside> element or role=”complementary” is present.

Standards and Guidelines

What It Means

A <footer> element or contentinfo landmark is present.

Why It Matters

Footers identify a footer for the page or a page section. It typically identifies authorship, related links, copyright date, or other footer content. Footers facilitate page semantics and navigation.

What To Do

Ensure the element surrounds and defines page or page section footer content.

The Algorithm… in English

A <footer> element or role=”contentinfo” is present.

Standards and Guidelines

Data table

What It Means

A data table is present.

Why It Matters

Data tables present tabular data. Data tables should contain table header cells that identify the content of their respective row and/or columns. Tables with proper table headers provide additional information and navigation for screen reader users.

What To Do

Ensure that the table contains tabular data and that it is not used merely for page layout. Ensure that all column and row headers are <th> elements and ensure the data cells are associated with their proper header cells (typically by assigning scope to the table headers). Where appropriate, associate a descriptive caption (<caption> element) to the table.

The Algorithm… in English

A <table> element is present that contains at least one table header cell (<th>).

Standards and Guidelines

Table caption

What It Means

A table caption is present.

Why It Matters

An associated table caption will be read by a screen reader with the table content.

What To Do

Ensure the table caption is properly associated with the correct table (<caption> should be the first element within the <table>) and that it provides a succinct description of the table.

The Algorithm… in English

A <caption> element is present.

Standards and Guidelines

Table header cell

What It Means

A table header cell (<th>) is present.

Why It Matters

Table headers describe the content of their respective row or column. They can be identified by screen readers when data cells are encountered.

What To Do

Ensure the cell is a table header, otherwise change it to a data cell (<td>). For complex tables (particularly when there are spanned cells), the relationship between header and data cells may need to be defined using scope (e.g., <th scope=”col”> or <th scope=”row”>) or headers and id attributes.

The Algorithm… in English

A <th> element is present that does not have a scope attribute value of “row” or “col”.

Standards and Guidelines

Column header cell

What It Means

A table column header (<th scope=”col”>) is present.

Why It Matters

Adding a column scope to a table header ensures the cells within that column will be programmatically associated to that header, particularly with complex tables. This facilitates screen reader navigation and orientation within the data table.

What To Do

Ensure that the cell is actually a header cell for tabular data and that it is a column header.

The Algorithm… in English

A table header cell (<th>) is present that has a scope attribute value of “col”.

Standards and Guidelines

Row header cell

What It Means

A table row header (<th scope=”row”>) is present.

Why It Matters

Adding a row scope to a table header ensures the cells within that row will be programmatically associated to that header, particularly with complex tables. This facilitates screen reader navigation and orientation within the data table.

What To Do

Ensure that the cell is actually a header cell for tabular data and that it is a row header.

The Algorithm… in English

A table header cell (<th>) is present that has a scope attribute value of “row”.

Standards and Guidelines

Inline Frame

What It Means

An inline frame (<iframe>) is present.

Why It Matters

The content of an inline frame is read as if it were part of the page that contains it. The content of the iframe must be accessible. A title attribute value for the iframe will generally be read by a screen reader when the iframe is encountered.

What To Do

Ensure that the content within the iframe is accessible. Optionally, a title attribute value can be added to provide a brief, advisory description of the iframe.

The Algorithm… in English

An <iframe> element is present.

Standards and Guidelines

  • None

ARIA

What It Means

An ARIA role, state, or property is present.

Why It Matters

ARIA provides enhanced semantics and accessibility for web content.

What To Do

Ensure the ARIA role, state, or property is used correctly. Use standard HTML accessibility features when possible. Be aware that support for ARIA is limited in older browsers and assistive technologies.

The Algorithm… in English

An ARIA role, state, or property is present, excluding landmark roles, aria-labelledby, or aria-describedby which are distinct WAVE items.

Standards and Guidelines

ARIA label

What It Means

An aria-label or aria-labelledby attribute is present.

Why It Matters

ARIA labels define accessible names to be read by screen readers for interface elements. They may be used when HTML associations (label, alternative text, etc.) are not sufficient.

What To Do

Ensure the aria-label value or element referenced by aria-labelledby provides a descriptive, accurate label. When possible, use standard HTML <label> or other markup to make the association.

The Algorithm… in English

An aria-label or aria-labelledby attribute is present.

Standards and Guidelines

ARIA description

What It Means

An aria-describedby attribute is present.

Why It Matters

ARIA descriptions provide additional information about interface elements, primarily form controls.

What To Do

Ensure the aria-describedby attribute references an element that provides a correct description.

The Algorithm… in English

An aria-describedby attribute is present.

Standards and Guidelines

ARIA alert or live region

What It Means

An ARIA alert role or live region is present.

Why It Matters

ARIA live regions and alerts can be used to dynamically inform screen reader users of content updates.

What To Do

Ensure the live region is properly tested and presents important, succinct content updates. A live region should not be used if focus is set to the updated page element.

The Algorithm… in English

A role=”alert”, role=”alertdialog”, or aria-live attribute is present.

Standards and Guidelines

ARIA menu

What It Means

An ARIA menu is present.

Why It Matters

ARIA menus are application menus (like those used in software menu) with a specific keyboard interactions. They are NOT for navigation links on a web site.

What To Do

Ensure that the menu is an application menu and has the appropriate keyboard interactions (menu items are navigated via the arrow keys, not via the Tab key), otherwise remove the menu role.

The Algorithm… in English

An element with role=”menu” or role=”menubar” is present.

Standards and Guidelines

ARIA button

What It Means

An element with role=”button” is present.

Why It Matters

Elements with role=”button” must function like native buttons. These should typically be replaced with true button elements.

What To Do

Replace the element with a true button element, or ensure the element is keyboard navigable, can be activated with Enter or Space key presses (key detection is typically necessary), and provides a visible focus indicator.

The Algorithm… in English

An element (other than a button) has role=”button”.

Standards and Guidelines

ARIA expanded

What It Means

An aria-expanded attribute is present.

Why It Matters

The aria-expanded attribute indicates the status of content that can be expanded and collapsed.

What To Do

Ensure that aria-expanded is used correctly (typically on a button that controls expandable content) and that the value (true or false) reflects the expansion state.

The Algorithm… in English

An element with an aria-expanded attribute is present.

Standards and Guidelines

ARIA popup

What It Means

An element triggers a popup menu, dialog, or other element.

Why It Matters

The aria-haspopup element, when applied to a button, indicates that triggering the element will open an ARIA menu, dialog, listbox, tree, or grid.

What To Do

Ensure that the element triggers an ARIA menu, dialog, listbox, tree, or grid and that the aria-haspop attribute value aligns with the type of element that is opened.

The Algorithm… in English

An aria-haspopup attribute is present.

Standards and Guidelines

ARIA tabindex

What It Means

A tabindex value of 0 or less is present.

Why It Matters

Tabindex can facilitate keyboard navigation for interactive elements. A tabindex attribute value of 0 places an item into the keyboard navigation order (i.e., you can navigate to it using the Tab key). A value of less than 0 (typically -1) removes an element from the keyboard flow (you cannot Tab to it), but allows it to receive programmatic focus (e.g., via scripting).

What To Do

Ensure that tabindex is being used correctly by navigating and interacting with the elements using only the keyboard. Positive tabindex values specify a distinct tab order and should typically be avoided.

The Algorithm… in English

A tabindex attribute is present and has a value of 0 or less.

Standards and Guidelines

ARIA hidden

What It Means

Content is hidden with ARIA.

Why It Matters

Content hidden with aria-hidden=”true” is not presented to screen reader users.

What To Do

Ensure the content is intended to be hidden from screen reader users. The hidden content must not contain any navigable elements (such as links or form controls).

The Algorithm… in English

An element with aria-hidden=”true” is present.

Standards and Guidelines