Body
When Ally flags accessibility issues in your HTML content, here is what each error means and how to resolve it.
Contrast Issues The text color and background color are too similar, making it hard to read for people with low vision, poor eyesight, or color blindness. To fix this, change the font color and/or background color. Use WebAIM's color contrast checker at webaim.org/resources/contrastchecker to find a combination that passes. You can also use the Canvas Accessibility Checker from the Rich Content Editor while in Edit mode to select new colors.
Images Without Alternative Text Images on the page do not have a description that screen readers can read aloud. To fix this, click on the image, open the Image Editor icon in the Rich Content Editor, and type a description into the alt text field.
Heading Structure Does Not Start at the Right Level The page headings do not begin with the correct level. On a Canvas page, the page title is automatically Heading 1. Section titles should begin at Heading 2, and any sub-sections should be Heading 3.
Tables Without Headers Tables on the page do not have a defined header row or column. To fix this, highlight the cells in the header row, go to the table menu in the Rich Content Editor, select Cell, then Cell Properties. Choose "Header Cells" from the Cell Type dropdown, then select the appropriate scope (columns or rows) and click OK.
Empty Headings The page contains heading formatting applied to blank lines. This often happens accidentally when a line above or below a heading gets marked as a heading style. Review the page and make sure any blank lines are set to normal paragraph text, not a heading style.
No Headings at All The page has no marked-up headings. For longer pages with multiple sections, headings allow users to navigate by section. In Edit mode, place your cursor on a section title, click the paragraph style dropdown in the Rich Content Editor (it likely reads "Paragraph"), and select the appropriate heading level. Remember, page title is Heading 1, section titles are Heading 2, and sub-sections are Heading 3.
Incorrect Heading Order Headings on the page skip levels or do not follow a logical descending order. All headings should be sequential. Do not jump from Heading 2 to Heading 4, for example. Follow the same structure described above.
Links Without Discernible Text The page contains a hyperlink with no visible text attached to it. This commonly happens when someone deletes the text from a link but does not remove the link itself. Look for an external link icon that appears on its own without any text near it. To remove it, delete the blank space around it, or go into the HTML code and remove the link tag entirely.
Form Elements Without Labels Input boxes, checkboxes, or dropdowns on the page are not labeled. Screen reader users rely on explicit labels to understand what each field is asking for. Each form element needs a label associated with it.
Embedded Objects Without Alternative Descriptions Embedded objects on the page do not have descriptive text. Screen readers rely on these descriptions to convey the purpose and content of the embedded object to users who cannot see it.
No Language Set The page does not declare what language it is written in. Screen readers use this information to determine how to pronounce the text. Set the language for the page.
Missing Page Title The HTML page does not have a title. Page titles appear in the browser tab and help users understand where they are. Add a meaningful title to the page.
Malformed Lists List elements on the page contain child elements that are not valid. This can cause screen readers to read the list content incorrectly. Review the list markup and correct any invalid nesting.
Links or Buttons With Redundant Text A link or button has text that repeats the alt text of an image inside it. Screen readers would read the same text twice. Remove the redundancy by adjusting either the link text or the image alt text so they are not identical.
Malformed Definition Lists Definition list elements contain invalid child elements, which can cause screen readers to read the content incorrectly. Review the definition list markup and correct any invalid nesting.