├── .gitignore ├── .vitepress ├── config.mjs └── theme │ ├── index.js │ └── style.css ├── CODE_OF_CONDUCT.md ├── LICENSE.md ├── README.md ├── automated-tools ├── accessibility-insights.md ├── accesslint-screenreaders.md ├── accesslint.md ├── alfa.md ├── andi.md ├── arc.md ├── assistive-webdriver.md ├── axe-core-react.md ├── axe-core.md ├── axe-devtools.md ├── editoria11y.md ├── ember-a11y-testing.md ├── ember-template-lint.md ├── equal-access-accessibility-checker-engine.md ├── equal-access-accessibility-checker-extension.md ├── equal-access-accessibility-checker-testing-libraries.md ├── eslint-plugin-jsx-a11y.md ├── eslint-plugin-lit-a11y.md ├── eslint-plugin-vuejs-accessibility.md ├── guidepup.md ├── index.md ├── jaws-inspect.md ├── jest-axe.md ├── keyboard-testing-library.md ├── lighthouse.md ├── luma.md ├── pa11y.md ├── sa11y.md ├── screen-reader-testing-library.md ├── stark-for-figma.md └── storybook-addon-a11y.md ├── components ├── SearchInput.vue └── TagLinks.vue ├── index.md ├── package.json ├── pnpm-lock.yaml ├── public ├── AAT-social.png ├── _headers ├── a-logo.svg └── robot-automation.png ├── tags ├── best-practice.md ├── failure-1.md ├── failure-10.md ├── failure-100.md ├── failure-101.md ├── failure-102.md ├── failure-103.md ├── failure-104.md ├── failure-105.md ├── failure-106.md ├── failure-107.md ├── failure-108.md ├── failure-12.md ├── failure-13.md ├── failure-14.md ├── failure-15.md ├── failure-16.md ├── failure-19.md ├── failure-2.md ├── failure-20.md ├── failure-22.md ├── failure-23.md ├── failure-24.md ├── failure-25.md ├── failure-26.md ├── failure-3.md ├── failure-30.md ├── failure-31.md ├── failure-32.md ├── failure-33.md ├── failure-34.md ├── failure-36.md ├── failure-37.md ├── failure-38.md ├── failure-39.md ├── failure-4.md ├── failure-40.md ├── failure-41.md ├── failure-42.md ├── failure-43.md ├── failure-44.md ├── failure-46.md ├── failure-47.md ├── failure-48.md ├── failure-49.md ├── failure-50.md ├── failure-52.md ├── failure-54.md ├── failure-55.md ├── failure-58.md ├── failure-59.md ├── failure-60.md ├── failure-61.md ├── failure-63.md ├── failure-65.md ├── failure-66.md ├── failure-67.md ├── failure-68.md ├── failure-69.md ├── failure-7.md ├── failure-70.md ├── failure-71.md ├── failure-72.md ├── failure-73.md ├── failure-74.md ├── failure-75.md ├── failure-77.md ├── failure-78.md ├── failure-79.md ├── failure-8.md ├── failure-80.md ├── failure-81.md ├── failure-82.md ├── failure-83.md ├── failure-84.md ├── failure-85.md ├── failure-86.md ├── failure-87.md ├── failure-88.md ├── failure-89.md ├── failure-9.md ├── failure-90.md ├── failure-91.md ├── failure-92.md ├── failure-93.md ├── failure-94.md ├── failure-95.md ├── failure-96.md ├── failure-97.md ├── failure-98.md ├── failure-99.md ├── general-technique-1.md ├── general-technique-10.md ├── general-technique-11.md ├── general-technique-13.md ├── general-technique-14.md ├── general-technique-15.md ├── general-technique-17.md ├── general-technique-18.md ├── general-technique-19.md ├── general-technique-21.md ├── general-technique-4.md ├── general-technique-5.md ├── general-technique-53.md ├── general-technique-54.md ├── general-technique-55.md ├── general-technique-56.md ├── general-technique-57.md ├── general-technique-58.md ├── general-technique-59.md ├── general-technique-60.md ├── general-technique-61.md ├── general-technique-62.md ├── general-technique-63.md ├── general-technique-64.md ├── general-technique-65.md ├── general-technique-68.md ├── general-technique-69.md ├── general-technique-70.md ├── general-technique-71.md ├── general-technique-73.md ├── general-technique-74.md ├── general-technique-75.md ├── general-technique-76.md ├── general-technique-78.md ├── general-technique-79.md ├── general-technique-8.md ├── general-technique-80.md ├── general-technique-81.md ├── general-technique-82.md ├── general-technique-83.md ├── general-technique-84.md ├── general-technique-85.md ├── general-technique-86.md ├── general-technique-87.md ├── general-technique-88.md ├── general-technique-89.md ├── general-technique-9.md ├── general-technique-90.md ├── html-33.md ├── wcag-1-1-1.md ├── wcag-1-1.md ├── wcag-1-2-1.md ├── wcag-1-2-2.md ├── wcag-1-2-3.md ├── wcag-1-2-4.md ├── wcag-1-2-5.md ├── wcag-1-2-6.md ├── wcag-1-2-7.md ├── wcag-1-2-8.md ├── wcag-1-2-9.md ├── wcag-1-2.md ├── wcag-1-3-1.md ├── wcag-1-3-2.md ├── wcag-1-3-3.md ├── wcag-1-3-4.md ├── wcag-1-3-5.md ├── wcag-1-3-6.md ├── wcag-1-3.md ├── wcag-1-4-1.md ├── wcag-1-4-10.md ├── wcag-1-4-11.md ├── wcag-1-4-12.md ├── wcag-1-4-13.md ├── wcag-1-4-2.md ├── wcag-1-4-3.md ├── wcag-1-4-4.md ├── wcag-1-4-5.md ├── wcag-1-4-6.md ├── wcag-1-4-7.md ├── wcag-1-4-8.md ├── wcag-1-4-9.md ├── wcag-1-4.md ├── wcag-2-1-1.md ├── wcag-2-1-2.md ├── wcag-2-1-3.md ├── wcag-2-1-4.md ├── wcag-2-1.md ├── wcag-2-2-1.md ├── wcag-2-2-2.md ├── wcag-2-2-3.md ├── wcag-2-2-4.md ├── wcag-2-2-5.md ├── wcag-2-2-6.md ├── wcag-2-2.md ├── wcag-2-3-1.md ├── wcag-2-3-2.md ├── wcag-2-3-3.md ├── wcag-2-3.md ├── wcag-2-4-1.md ├── wcag-2-4-10.md ├── wcag-2-4-2.md ├── wcag-2-4-3.md ├── wcag-2-4-4.md ├── wcag-2-4-5.md ├── wcag-2-4-6.md ├── wcag-2-4-7.md ├── wcag-2-4-8.md ├── wcag-2-4-9.md ├── wcag-2-4.md ├── wcag-2-5-1.md ├── wcag-2-5-2.md ├── wcag-2-5-3.md ├── wcag-2-5-4.md ├── wcag-2-5-5.md ├── wcag-2-5-6.md ├── wcag-2-5.md ├── wcag-3-1-1.md ├── wcag-3-1-2.md ├── wcag-3-1-3.md ├── wcag-3-1-4.md ├── wcag-3-1-5.md ├── wcag-3-1-6.md ├── wcag-3-1.md ├── wcag-3-2-1.md ├── wcag-3-2-2.md ├── wcag-3-2-3.md ├── wcag-3-2-4.md ├── wcag-3-2-5.md ├── wcag-3-2.md ├── wcag-3-3-1.md ├── wcag-3-3-2.md ├── wcag-3-3-3.md ├── wcag-3-3-4.md ├── wcag-3-3-5.md ├── wcag-3-3-6.md ├── wcag-3-3.md ├── wcag-4-1-1.md ├── wcag-4-1-2.md ├── wcag-4-1-3.md ├── wcag-4-1.md ├── wcag-5-1.md ├── wcag-5-2-1.md ├── wcag-5-2-2.md ├── wcag-5-2-3.md ├── wcag-5-2-4.md ├── wcag-5-2-5.md ├── wcag-5-2.md ├── wcag-5-3-1.md ├── wcag-5-3-2.md ├── wcag-5-3.md ├── wcag-5-4.md └── wcag-5-5.md └── violations ├── abstract-roles.md ├── alt-color-diffs.md ├── areas-in-img-maps.md ├── ascii-art-alt.md ├── autocomplete-values.md ├── autoplaying-media.md ├── autoplaying-sound.md ├── avoid-blink.md ├── background-contrast.md ├── banner-as-body-descendant.md ├── blank-th-elements.md ├── button-link-text.md ├── captions-in-layout-tables.md ├── character-key-shortcuts.md ├── color-contrast.md ├── color-specification.md ├── complementary-as-body-descendant.md ├── complete-captions.md ├── content-formats.md ├── content-hoverable.md ├── content-identification-shape-location.md ├── content-meaning-through-css.md ├── contentinfo-as-body-descendant.md ├── css-faux-headings.md ├── description-equality.md ├── dynamic-images.md ├── element-zoom.md ├── emphasized-text.md ├── empty-heading.md ├── event-handler-activation.md ├── faux-links.md ├── faux-lists.md ├── focus-removed.md ├── glyphs-require-alt.md ├── grouped-form-controls.md ├── h1-missing.md ├── h1-multiple.md ├── hidden-interactive-elements.md ├── hidden-tooltip-content.md ├── icon-only.md ├── icon-zoom.md ├── iframe-title-unique.md ├── iframe-title.md ├── ignore-decorative-images.md ├── incorrect-page-title.md ├── index.md ├── input-character-counts.md ├── interactive-datepicker.md ├── interactive-focus.md ├── interactive-keyboard.md ├── interactive-tabs.md ├── invalid-interactive.md ├── invalid-lists.md ├── invalid-roles.md ├── keyboard-nav-scrollable-content.md ├── keyboard-nav-typeahead.md ├── labels-in-forms.md ├── linearize-table.md ├── link-name.md ├── link-title.md ├── links-as-text.md ├── main-as-body-descendant.md ├── main-landmark-exists.md ├── meta-redirect-time-limit.md ├── meta-refresh.md ├── missing-alt-attribute.md ├── missing-bypass-block.md ├── missing-page-title.md ├── multiple-labels.md ├── multiple-landmarks.md ├── nested-interactive.md ├── no-background-image-text.md ├── no-blink-without-pause.md ├── no-blink.md ├── no-obsolete-element-use.md ├── no-presentational-interactive.md ├── no-presentational-semantics.md ├── non-conforming-page.md ├── non-text-contrast-ratio.md ├── only-one-banner.md ├── only-one-contentinfo.md ├── only-one-main.md ├── orientation-lock.md ├── orientation-message.md ├── pop-ups.md ├── positive-tabindex.md ├── pre-tables.md ├── pseudo-content.md ├── reflow-content.md ├── required-and-error-fields.md ├── required-input-fields.md ├── search-result-announcements.md ├── select-accessible-name.md ├── semantic-markup-relationships.md ├── server-side-image-maps.md ├── sync-media-with-more-info.md ├── sync-media-with-text-alt.md ├── tab-markup.md ├── table-captions.md ├── table-headers-content.md ├── table-headers-markup.md ├── table-titles.md ├── text-as-headings.md ├── text-form-controls.md ├── text-justified.md ├── text-resized.md ├── text-spacing.md ├── text-zoom.md ├── th-in-layout-tables.md ├── unique-landmarks.md ├── user-controlled-focus.md ├── valid-alt-text.md ├── valid-dd-dt-elements.md ├── valid-dl-elements.md ├── viewport-unit-use.md ├── whitespace-for-layout.md ├── whitespace-for-tables.md └── whitespace-within-word.md /.gitignore: -------------------------------------------------------------------------------- 1 | .vitepress/dist 2 | .vitepress/cache 3 | node_modules 4 | 5 | .DS_Store -------------------------------------------------------------------------------- /.vitepress/theme/index.js: -------------------------------------------------------------------------------- 1 | // https://vitepress.dev/guide/custom-theme 2 | import { h } from 'vue' 3 | import DefaultTheme from 'vitepress/theme' 4 | import TagLinks from './../../components/TagLinks.vue' 5 | import './style.css' 6 | 7 | /** @type {import('vitepress').Theme} */ 8 | export default { 9 | extends: DefaultTheme, 10 | Layout: () => { 11 | return h(DefaultTheme.Layout, null, { 12 | // https://vitepress.dev/guide/extending-default-theme#layout-slots 13 | }) 14 | }, 15 | enhanceApp({ app, router, siteData }) { 16 | app.component('TagLinks', TagLinks) 17 | // ... 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Code of Conduct 2 | 3 | I'll keep it simple. There's one expectation: be kind. 4 | 5 | Contributions, questions, and constructive criticism are welcome. Rudeness and other foolishness will simply not be tolerated. This project should _only_ be used for the purposes already otherwise stated in the documentation. 6 | 7 | Anyone who contributes to this project deserves to be recognized and should add themselves in the `package.json` file as a contributor of the project. 8 | 9 | If you have any questions, please file an issue in this repository and I will respond as quickly as I am able. 10 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2025 Melanie Sumner 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /automated-tools/accessibility-insights.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Accessibility Insights" 3 | category: "Browser Extension" 4 | description: "A browser extension that helps developers find and fix accessibility issues in web apps and sites." 5 | link: "https://accessibilityinsights.io/downloads/" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/accesslint-screenreaders.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "AccessLint/screenreaders" 3 | category: "AT Automation" 4 | description: "Screen reader automation tools by AccessLint, including VoiceOver.js and Auto-VO." 5 | link: "https://github.com/AccessLint/screenreaders" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/accesslint.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "AccessLint" 3 | category: "Code Linter (Static)" 4 | description: "AccessLint brings automated web accessibility testing into your development workflow. When a pull request is opened, AccessLint reviews the changes and comments with any new accessibility issues, giving you quick, timely, and targeted feedback, before code goes live." 5 | link: "https://github.com/marketplace/accesslint" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/alfa.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "alfa" 3 | category: "Testing Engine" 4 | description: "Suite of open and standards-based tools for performing reliable accessibility conformance testing at scale." 5 | link: "https://github.com/Siteimprove/alfa" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/andi.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "ANDI" 3 | category: "Browser Extension" 4 | description: "ANDI (Accessible Name & Description Inspector) is a free open-source tool that can be used to test websites for conformance to the Web Content Accessibility Guidelines (WCAG) 2.0 Level A and AA success criteria." 5 | link: "https://www.ssa.gov/accessibility/andi/help/install.html" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/arc.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "ARC" 3 | category: "Browser Extension" 4 | description: "Single-page, on-demand, accessibility testing tool." 5 | link: "https://www.tpgi.com/arc-platform/arc-toolkit/" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/assistive-webdriver.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Assistive-Webdriver" 3 | category: "AT Automation" 4 | description: "Assistive-Webdriver is a tool to automate end-to-end web application tests with a screen reader." 5 | link: "https://github.com/AmadeusITGroup/Assistive-Webdriver" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/axe-core-react.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "@axe-core/react" 3 | category: "Testing Library" 4 | description: "Test your React application with the axe-core accessibility testing library. Results will show in the Chrome DevTools console." 5 | link: "https://github.com/dequelabs/axe-core-npm/tree/master/packages/react" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/axe-core.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "aXe-core" 3 | category: "Testing Engine" 4 | description: "A accessibility testing engine for JavaScript." 5 | link: "https://github.com/dequelabs/axe-core" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/axe-devtools.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "aXe DevTools" 3 | category: "Browser Extension" 4 | description: "A browser extension that anyone can use to help identify and resolve common accessibility issues." 5 | link: "https://www.deque.com/axe/browser-extensions/" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/editoria11y.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Editoria11y" 3 | category: "Testing Tool" 4 | description: "A user-friendly automatic content accessibility checker." 5 | link: "https://editoria11y.princeton.edu/" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/ember-a11y-testing.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "ember-a11y-testing" 3 | category: "Testing Library" 4 | description: "Accessibility testing for Ember apps; provides middleware that allows the browser to talk to the node process running the tests via testem." 5 | link: "https://github.com/ember-a11y/ember-a11y-testing" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/ember-template-lint.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "ember-template-lint" 3 | category: "Code Linter (Static)" 4 | description: "Linting for your handlebars templates. Supports custom and shared configs, todo utils, and auto-fixes." 5 | link: "https://github.com/ember-template-lint/ember-template-lint" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/equal-access-accessibility-checker-engine.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "equal-access accessibility-checker engine" 3 | category: "Testing Engine" 4 | description: "IBM accessibility rules and evaluation engine to help users to check their web pages to identify and report accessibility issues. Part of the IBM Equal Access Accessibility Checker suite." 5 | link: "https://github.com/IBMa/equal-access/blob/master/accessibility-checker-engine/README.md" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/equal-access-accessibility-checker-extension.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "equal-access accessibility-checker extension" 3 | category: "Browser Extension" 4 | description: "Adds automated accessibility checking capabilities to Firefox and Chromium browsers. Part of the IBM Equal Access Accessibility Checker suite." 5 | link: "https://github.com/IBMa/equal-access" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/equal-access-accessibility-checker-testing-libraries.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "equal-access accessibility-checker testing libraries" 3 | category: "Testing Library" 4 | description: "Automated accessibility testing for Node.js-based, Cypress, or Karma test runners. Part of the IBM Equal Access Accessibility Checker suite." 5 | link: "https://github.com/IBMa/equal-access" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/eslint-plugin-jsx-a11y.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "eslint-plugin-jsx-a11y" 3 | category: "Code Linter (Static)" 4 | description: "Accessibility Linting for your React applications." 5 | link: "https://github.com/jsx-eslint/eslint-plugin-jsx-a11y" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/eslint-plugin-lit-a11y.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "eslint-plugin-lit-a11y" 3 | category: "Code Linter (Static)" 4 | description: "Accessibility linting plugin for lit-html. Most of the rules are ported from eslint-plugin-jsx-a11y, and made to work with lit-html templates and custom elements." 5 | link: "https://github.com/open-wc/open-wc/tree/master/docs/docs/linting/eslint-plugin-lit-a11y" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/eslint-plugin-vuejs-accessibility.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "eslint-plugin-vuejs-accessibility" 3 | category: "Code Linter (Static)" 4 | description: "Accessibility Linting for your Vue applications." 5 | link: "https://github.com/vue-a11y/eslint-plugin-vuejs-accessibility" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/guidepup.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Guidepup" 3 | category: "AT Automation" 4 | description: "Screen reader driver for test automation, including VoiceOver and NVDA." 5 | link: "https://www.guidepup.dev/" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Automated Tools 3 | editLink: true 4 | lastUpdated: true 5 | sidebar: false 6 | aside: false 7 | --- 8 | 9 | 26 | 27 | # {{ $frontmatter.title }} 28 | 29 |
30 |
31 |
32 |

These are some of the automated tools available, no endorsement implied. If you know of one that exists but is not listed here, please file an issue and let us know!

33 |
    34 |
  • 35 |
    36 | {{ tool.title }} 37 |

    {{ tool.description }}

    38 |
    39 | 42 |
  • 43 |
44 |
45 |
46 |
47 | -------------------------------------------------------------------------------- /automated-tools/jaws-inspect.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "JAWS Inspect" 3 | category: "Testing Tool" 4 | description: "A screen reader testing tool that vastly simplifies accessibility and JAWS® compatibility testing by providing a text output of JAWS speech." 5 | link: "https://www.tpgi.com/arc-platform/jaws-inspect/" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/jest-axe.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "jest-axe" 3 | category: "Testing Library" 4 | description: "Custom Jest matcher for axe for testing accessibility." 5 | link: "https://github.com/nickcolley/jest-axe#readme" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/keyboard-testing-library.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "keyboard-testing-library" 3 | category: "Testing Library" 4 | description: "An extension of Testing Library focused on simulating keyboard-only users behaviors." 5 | link: "https://www.npmjs.com/package/keyboard-testing-library" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/lighthouse.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Lighthouse" 3 | category: "Chrome DevTools" 4 | description: "The Lighthouse Accessibility score is a weighted average of all accessibility audits." 5 | link: "https://github.com/GoogleChrome/lighthouse" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/luma.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Luma" 3 | category: "Testing Tool" 4 | description: "A powerful and accurate photosensitive epilepsy seizure triggers detection tool." 5 | link: "https://www.includia.com/luma/upload" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/pa11y.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Pa11y" 3 | category: "Testing Tool" 4 | description: "A command-line tool for testing the accessibility of any URL." 5 | link: "https://pa11y.org/" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/sa11y.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Sa11y" 3 | category: "Testing Tool" 4 | description: "A customizable, framework-agnostic content accessibility checker geared towards content authors. Sa11y straightforwardly identifies errors or warnings at the source with a simple tooltip on how to fix them." 5 | link: "https://sa11y.netlify.app/" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/screen-reader-testing-library.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "screen-reader-testing-library" 3 | category: "AT Automation" 4 | description: "Utilities to match the speech output of screen readers when replaying user interactions." 5 | link: "https://github.com/eps1lon/screen-reader-testing-library" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/stark-for-figma.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "Stark for Figma" 3 | category: "Design Tool" 4 | description: "Contrast & Accessibility Checker" 5 | link: "https://www.figma.com/community/plugin/732603254453395948/stark-contrast-accessibility-checker" 6 | --- 7 | -------------------------------------------------------------------------------- /automated-tools/storybook-addon-a11y.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: "storybook-addon-a11y" 3 | category: "Documentation" 4 | description: "Use Storybook? This addon can help make your UI components more accessible." 5 | link: "https://storybook.js.org/addons/@storybook/addon-a11y" 6 | --- 7 | -------------------------------------------------------------------------------- /components/SearchInput.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | 19 | -------------------------------------------------------------------------------- /components/TagLinks.vue: -------------------------------------------------------------------------------- 1 | 22 | 23 | -------------------------------------------------------------------------------- /index.md: -------------------------------------------------------------------------------- 1 | --- 2 | # https://vitepress.dev/reference/default-theme-home-page 3 | layout: home 4 | 5 | hero: 6 | name: "A11y Automation" 7 | text: "Tracking available automation" 8 | tagline: An open-source project to track the potential accessibility violations and document the automated checks available for each. 9 | image: /robot-automation.png 10 | actions: 11 | - theme: brand 12 | text: Potential Violations 13 | link: /violations/ 14 | - theme: alt 15 | text: Available Tooling 16 | link: /automated-tools/ 17 | features: 18 | - title: Inspire Innovation 19 | details: If we know that it's possible but hasn't been done yet, we can act. If we think it's not possible yet, we can start thinking about how to make it possible. 20 | - title: Educate Everyone 21 | details: Everyone that works on a digital product can educate themselves on the potential accessibility violations and how to test for each. 22 | - title: Elevate Accessibility 23 | details: When we identify the full scope of the problems in a11y automation, we have a place to start (or even continue!) and elevate accessibility to a first-class citizen of the foundations of the web. 24 | --- 25 | 26 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "a11y-automation", 3 | "version": "0.0.0", 4 | "private": false, 5 | "description": "an open-source project to track available accessibility automation tools", 6 | "repository": "https://github.com/MelSumner/a11y-automation", 7 | "license": "MIT", 8 | "author": "Melanie Sumner ", 9 | "contributors": [ 10 | "Joseph Sumner " 11 | ], 12 | "packageManager": "pnpm@10.10.0+sha512.d615db246fe70f25dcfea6d8d73dee782ce23e2245e3c4f6f888249fb568149318637dca73c2c5c8ef2a4ca0d5657fb9567188bfab47f566d1ee6ce987815c39", 13 | "scripts": { 14 | "docs:dev": "vitepress dev .", 15 | "docs:build": "vitepress build .", 16 | "docs:preview": "vitepress preview ." 17 | }, 18 | "devDependencies": { 19 | "vitepress": "2.0.0-alpha.5", 20 | "vue": "^3.5.13" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /public/AAT-social.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MelSumner/a11y-automation/3fd589e5807e5863bbdefbfbe6939b2692ced6e3/public/AAT-social.png -------------------------------------------------------------------------------- /public/_headers: -------------------------------------------------------------------------------- 1 | /assets/* 2 | cache-control: max-age=31536000 3 | cache-control: immutable -------------------------------------------------------------------------------- /public/robot-automation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MelSumner/a11y-automation/3fd589e5807e5863bbdefbfbe6939b2692ced6e3/public/robot-automation.png -------------------------------------------------------------------------------- /tags/best-practice.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Best Practice 3 | --- 4 | -------------------------------------------------------------------------------- /tags/failure-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 1 3 | description: Failure of Success Criterion 1.3.2 due to changing the meaning of content by positioning information with CSS 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F1 5 | --- -------------------------------------------------------------------------------- /tags/failure-10.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 10 3 | description: Failure of Success Criterion 2.1.2 and Conformance Requirement 5 due to combining multiple content formats in a way that traps users inside one format type 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F10 5 | --- -------------------------------------------------------------------------------- /tags/failure-100.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 100 3 | description: "Failure of Success Criterion 1.3.4 due to showing a message asking to reorient device" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F100 5 | --- -------------------------------------------------------------------------------- /tags/failure-101.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 101 3 | description: "Failure of Success Criterion 2.5.2 due to activating a control on the down-event" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F101 5 | --- -------------------------------------------------------------------------------- /tags/failure-102.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 102 3 | description: "Failure of Success Criterion 1.4.10 due to content disappearing and not being available when content has reflowed" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F102 5 | --- -------------------------------------------------------------------------------- /tags/failure-103.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 103 3 | description: "Failure of Success Criterion 4.1.3 due to providing status messages that cannot be programmatically determined through role or properties" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F103 5 | --- -------------------------------------------------------------------------------- /tags/failure-104.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 104 3 | description: "Failure of Success Criterion 1.4.12 due to clipped or overlapped content when text spacing is adjusted" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F104 5 | --- -------------------------------------------------------------------------------- /tags/failure-105.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 105 3 | description: "Failure of Success Criterion 2.5.1 due to providing functionality via a path-based gesture without simple pointer alternative" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F105 5 | --- -------------------------------------------------------------------------------- /tags/failure-106.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 106 3 | description: "Failure due to inability to deactivate motion actuation" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F106 5 | --- -------------------------------------------------------------------------------- /tags/failure-107.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 107 3 | description: "Failure of Success Criterion 1.3.5 due to incorrect autocomplete attribute values" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F107 5 | --- -------------------------------------------------------------------------------- /tags/failure-108.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 108 3 | description: "Failure of Success Criterion 2.5.X Dragging due to not providing a single pointer method for the user to operate a function that does not require a dragging movement" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F108 5 | --- -------------------------------------------------------------------------------- /tags/failure-12.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 12 3 | description: Failure of Success Criterion 2.2.5 due to having a session time limit without a mechanism for saving user's input and re-establishing that information upon re-authentication 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F12 5 | --- -------------------------------------------------------------------------------- /tags/failure-13.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 13 3 | description: Failure of Success Criterion 1.1.1 and 1.4.1 due to having a text alternative that does not include information that is conveyed by color differences in the image 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F13 5 | --- -------------------------------------------------------------------------------- /tags/failure-14.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 14 3 | description: Failure of Success Criterion 1.3.3 due to identifying content only by its shape or location 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F14 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-15.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 15 3 | description: Failure of Success Criterion 4.1.2 due to implementing custom controls that do not use an accessibility API for the technology, or do so incompletely 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F15 5 | --- -------------------------------------------------------------------------------- /tags/failure-16.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 16 3 | description: Failure of Success Criterion 2.2.2 due to including scrolling content where movement is not essential to the activity without also including a mechanism to pause and restart the content 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F16 5 | --- -------------------------------------------------------------------------------- /tags/failure-19.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 19 3 | description: Failure of Conformance Requirement 1 due to not providing a method for the user to find the alternative conforming version of a non-conforming Web page 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F19 5 | --- -------------------------------------------------------------------------------- /tags/failure-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 2 3 | description: Failure of Success Criterion 1.3.1 due to using changes in text presentation to convey information without using the appropriate markup or text 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F2 5 | --- -------------------------------------------------------------------------------- /tags/failure-20.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 20 3 | description: Failure of Success Criterion 1.1.1 and 4.1.2 due to not updating text alternatives when changes to non-text content occur 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F20 5 | --- -------------------------------------------------------------------------------- /tags/failure-22.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 22 3 | description: Failure of Success Criterion 3.2.5 due to opening windows that are not requested by the user 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F22 5 | --- -------------------------------------------------------------------------------- /tags/failure-23.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 23 3 | description: Failure of 1.4.2 due to playing a sound longer than 3 seconds where there is no mechanism to turn it off 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F23 5 | --- -------------------------------------------------------------------------------- /tags/failure-24.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 24 3 | description: Failure of Success Criterion 1.4.3, 1.4.6 and 1.4.8 due to specifying foreground colors without specifying background colors or vice versa 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F24 5 | --- -------------------------------------------------------------------------------- /tags/failure-25.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 25 3 | description: Failure of Success Criterion 2.4.2 due to the title of a Web page not identifying the contents 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F25 5 | --- -------------------------------------------------------------------------------- /tags/failure-26.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 26 3 | description: Failure of Success Criterion 1.3.3 due to using a graphical symbol alone to convey information 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F26 5 | --- -------------------------------------------------------------------------------- /tags/failure-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 3 3 | description: Failure of Success Criterion 1.1.1 due to using CSS to include images that convey important information 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F3 5 | --- -------------------------------------------------------------------------------- /tags/failure-30.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 30 3 | description: Failure of Success Criterion 1.1.1 and 1.2.1 due to using text alternatives that are not alternatives (e.g., filenames or placeholder text) 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F30 5 | --- -------------------------------------------------------------------------------- /tags/failure-31.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 31 3 | description: Failure of Success Criterion 3.2.4 due to using two different labels for the same function on different Web pages within a set of Web pages 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F31 5 | --- -------------------------------------------------------------------------------- /tags/failure-32.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 32 3 | description: Failure of Success Criterion 1.3.2 due to using white space characters to control spacing within a word 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F32 5 | --- -------------------------------------------------------------------------------- /tags/failure-33.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 33 3 | description: Failure of Success Criterion 1.3.1 and 1.3.2 due to using white space characters to create multiple columns in plain text content 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F33 5 | --- -------------------------------------------------------------------------------- /tags/failure-34.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 34 3 | description: Failure of Success Criterion 1.3.1 and 1.3.2 due to using white space characters to format tables in plain text content 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F34 5 | --- -------------------------------------------------------------------------------- /tags/failure-36.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 36 3 | description: Failure of Success Criterion 3.2.2 due to automatically submitting a form and given a value 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F36 5 | --- -------------------------------------------------------------------------------- /tags/failure-37.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 37 3 | description: Failure of Success Criterion 3.2.2 due to launching a new window without prior warning when the selection of a radio button, check box or select list is changed 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F37 5 | --- -------------------------------------------------------------------------------- /tags/failure-38.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 38 3 | description: Failure of Success Criterion 1.1.1 due to not marking up decorative images in HTML in a way that allows assistive technology to ignore them 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F38 5 | --- -------------------------------------------------------------------------------- /tags/failure-39.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 39 3 | description: Failure of Success Criterion 1.1.1 due to providing a text alternative that is not null (e.g., alt="spacer" or alt="image") for images that should be ignored by assistive technology 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F39 5 | --- -------------------------------------------------------------------------------- /tags/failure-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 4 3 | description: Failure of Success Criterion 2.2.2 due to using `text-decoration:blink` without a mechanism to stop it in less than five seconds 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F4 5 | --- -------------------------------------------------------------------------------- /tags/failure-40.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 40 3 | description: Failure due to using meta redirect with a time limit 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F40 5 | --- -------------------------------------------------------------------------------- /tags/failure-41.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 41 3 | description: Failure of Success Criterion 2.2.1, 2.2.4, and 3.2.5 due to using meta refresh to reload the page 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F41 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-42.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 42 3 | description: Failure of Success Criteria 1.3.1, 2.1.1, 2.1.3, or 4.1.2 when emulating links 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F42 5 | --- -------------------------------------------------------------------------------- /tags/failure-43.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 43 3 | description: Failure of Success Criterion 1.3.1 due to using structural markup in a way that does not represent relationships in the content 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F43 5 | --- -------------------------------------------------------------------------------- /tags/failure-44.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 44 3 | description: Failure of Success Criterion 2.4.3 due to using tabindex to create a tab order that does not preserve meaning and operability 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F44 5 | --- -------------------------------------------------------------------------------- /tags/failure-46.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 46 3 | description: "Failure of Success Criterion 1.3.1 due to using th elements, layout tables" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F46 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-47.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 47 3 | description: "Failure of Success Criterion 2.2.2 due to using the blink element" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F47 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-48.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 48 3 | description: "Failure of Success Criterion 1.3.1 due to using the pre element to markup tabular information" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F48 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-49.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 49 3 | description: "Failure of Success Criterion 1.3.2 due to using an HTML layout table that does not make sense when linearized" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F49 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-50.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 50 3 | description: "Failure of Success Criterion 2.2.2 due to a script that causes a blink effect without a mechanism to stop the blinking at 5 seconds or less" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F50 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-52.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 52 3 | description: "Failure of Success Criterion 3.2.1 and 3.2.5 due to opening a new window as soon as a new page is loaded" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F52 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-54.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 54 3 | description: "Failure of Success Criterion 2.1.1 due to using only pointing-device-specific event handlers (including gesture) for a function" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F54 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-55.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 55 3 | description: "Failure of Success Criteria 2.1.1, 2.4.7, and 3.2.1 due to using script to remove focus when focus is received" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F55 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-58.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 58 3 | description: "Failure of Success Criterion 2.2.1 due to using server-side techniques to automatically redirect pages after a time-out" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F58 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-59.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 59 3 | description: "Failure of Success Criterion 4.1.2 due to using script to make div or span a user interface control in HTML without providing a role for the control" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F59 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-60.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 60 3 | description: "Failure of Success Criterion 3.2.5 due to launching a new window when a user enters text into an input field" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F60 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-61.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 61 3 | description: "Failure of Success Criterion 3.2.5 due to complete change of main content through an automatic update that the user cannot disable from within the content" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F61 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-63.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 63 3 | description: "Failure of Success Criterion 2.4.4 due to providing link context only in content that is not related to the link" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F63 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-65.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 65 3 | description: Failure of Success Criterion 1.1.1 due to omitting the alt attribute or text alternative on img elements, area elements, and input elements of type "image" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F65 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-66.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 66 3 | description: "Failure of Success Criterion 3.2.3 due to presenting navigation links in a different relative order on different pages" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F66 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-67.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 67 3 | description: "Failure of Success Criterion 1.1.1 and 1.2.1 due to providing long descriptions for non-text content that does not serve the same purpose or does not present the same information" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F67 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-68.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 68 3 | description: "Failure of Success Criterion 4.1.2 due to a user interface control not having a programmatically determined name" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F68 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-69.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 69 3 | description: "Failure of Success Criterion 1.4.4 when resizing visually rendered text up to 200 percent causes the text, image or controls to be clipped, truncated or obscured" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F69 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-7.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 7 3 | description: Failure of Success Criterion 2.2.2 due to an object or applet, such as Java or Flash, that has blinking content without a mechanism to pause the content that blinks for more than five seconds 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F7 5 | --- -------------------------------------------------------------------------------- /tags/failure-70.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 70 3 | description: "Failure of Success Criterion 4.1.1 due to incorrect use of start and end tags or attribute markup" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F70 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-71.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 71 3 | description: "Failure of Success Criterion 1.1.1 due to using text look-alikes to represent text without providing a text alternative" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F71 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-72.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 72 3 | description: "Failure of Success Criterion 1.1.1 due to using ASCII art without providing a text alternative" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F72 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-73.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 73 3 | description: "Failure of Success Criterion 1.4.1 due to creating links that are not visually evident without color vision" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F73 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-74.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 74 3 | description: "Failure of Success Criterion 1.2.2 and 1.2.8 due to not labeling a synchronized media alternative to text as an alternative" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F74 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-75.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 75 3 | description: "Failure of Success Criterion 1.2.2 by providing synchronized media without captions when the synchronized media presents more information than is presented on the page" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F75 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-77.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 77 3 | description: "Failure of Success Criterion 4.1.1 due to duplicate values of type ID" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F77 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-78.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 78 3 | description: "Failure of Success Criterion 2.4.7 due to styling element outlines and borders in a way that removes or renders non-visible the visual focus indicator" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F78 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-79.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 79 3 | description: "Failure of Success Criterion 4.1.2 due to the focus state of a user interface component not being programmatically determinable or no notification of change of focus state available" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F79 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-8.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 8 3 | description: Failure of Success Criterion 1.2.2 due to captions omitting some dialogue or important sound effects 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F8 5 | --- -------------------------------------------------------------------------------- /tags/failure-80.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 80 3 | description: "Failure of Success Criterion 1.4.4 when text-based form controls do not resize when visually rendered text is resized up to 200%" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F80 5 | --- 6 | -------------------------------------------------------------------------------- /tags/failure-81.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 81 3 | description: "Failure of Success Criterion 1.4.1 due to identifying required or error fields using color differences only" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F81 5 | --- -------------------------------------------------------------------------------- /tags/failure-82.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 82 3 | description: "Failure of Success Criterion 3.3.2 by visually formatting a set of phone number fields but not including a text label" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F82 5 | --- -------------------------------------------------------------------------------- /tags/failure-83.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 83 3 | description: "Failure of Success Criterion 1.4.3 and 1.4.6 due to using background images that do not provide sufficient contrast with foreground text (or images of text)" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F83 5 | --- -------------------------------------------------------------------------------- /tags/failure-84.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 84 3 | description: Failure of Success Criterion 2.4.9 due to using a non-specific link such as "click here" or "more" without a mechanism to change the link text to specific text. 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F84 5 | --- -------------------------------------------------------------------------------- /tags/failure-85.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 85 3 | description: "Failure of Success Criterion 2.4.3 due to using dialogs or menus that are not adjacent to their trigger control in the sequential navigation order" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F85 5 | --- -------------------------------------------------------------------------------- /tags/failure-86.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 86 3 | description: "Failure of Success Criterion 4.1.2 due to not providing names for each part of a multi-part form field, such as a US telephone number" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F86 5 | --- -------------------------------------------------------------------------------- /tags/failure-87.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 87 3 | description: "Failure of Success Criterion 1.3.1 due to inserting non-decorative content by using :before and :after pseudo-elements and the 'content' property in CSS" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F87 5 | --- -------------------------------------------------------------------------------- /tags/failure-88.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 88 3 | description: "Failure of Success Criterion 1.4.8 due to using text that is justified (aligned to both the left and the right margins)" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F88 5 | --- -------------------------------------------------------------------------------- /tags/failure-89.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 89 3 | description: "Failure of Success Criteria 2.4.4, 2.4.9 and 4.1.2 due to not providing an accessible name for an image which is the only content in a link" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F89 5 | --- -------------------------------------------------------------------------------- /tags/failure-9.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 9 3 | description: Failure of Success Criterion 3.2.5 due to changing the context when the user removes focus from a form element 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F9 5 | --- -------------------------------------------------------------------------------- /tags/failure-90.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 90 3 | description: "Failure of Success Criterion 1.3.1 for incorrectly associating table headers and content via the headers and id attributes" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F90 5 | --- -------------------------------------------------------------------------------- /tags/failure-91.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 91 3 | description: "Failure of Success Criterion 1.3.1 for not correctly marking up table headers" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F91 5 | --- -------------------------------------------------------------------------------- /tags/failure-92.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 92 3 | description: "Failure of Success Criterion 1.3.1 due to the use of role presentation on content which conveys semantic information" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F92 5 | --- -------------------------------------------------------------------------------- /tags/failure-93.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 93 3 | description: "Failure of Success Criterion 1.4.2 for absence of a way to pause or stop an HTML5 media element that autoplays" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F93 5 | --- -------------------------------------------------------------------------------- /tags/failure-94.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 94 3 | description: "Failure of Success Criterion 1.4.4 due to incorrect use of viewport units to resize text" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F94 5 | --- -------------------------------------------------------------------------------- /tags/failure-95.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 95 3 | description: "Failure of Success Criterion 1.4.13 due to content shown on hover not being hoverable" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F95 5 | --- -------------------------------------------------------------------------------- /tags/failure-96.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 96 3 | description: "Failure due to the accessible name not containing the visible label text" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F96 5 | --- -------------------------------------------------------------------------------- /tags/failure-97.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 97 3 | description: "Failure due to locking the orientation to landscape or portrait view" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F97 5 | --- -------------------------------------------------------------------------------- /tags/failure-98.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 98 3 | description: "Failure due to interactions being limited to touch-only on touchscreen devices" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F98 5 | --- -------------------------------------------------------------------------------- /tags/failure-99.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Failure 99 3 | description: "Failure of Success Criterion 2.1.4 due to implementing character key shortcuts that cannot be turned off or remapped" 4 | url: https://www.w3.org/WAI/WCAG21/Techniques/failures/F99 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Adding a link at the top of each page that goes directly to the main content area 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G1.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-10.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Creating components using a technology that supports the accessibility API features 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G10.html 5 | --- 6 | G10: Creating components using a technology that supports the accessibility API features of the platforms on which the user agents will be run to expose the names and roles, allow user-settable properties to be directly set, and provide notification of changes 7 | -------------------------------------------------------------------------------- /tags/general-technique-11.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Creating content that blinks for less than 5 seconds 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G11.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-13.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Describing what will happen before a change to a form control that causes a change of context to occur is made 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G13.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-14.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Ensuring that information conveyed by color differences is also available in text 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G14.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-15.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Using a tool to ensure that content does not violate the general flash threshold or red flash threshold 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G15.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-17.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Ensuring that a contrast ratio of at least 7:1 exists 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G17.html 5 | --- 6 | G17: Ensuring that a contrast ratio of at least 7:1 exists between text (and images of text) and background behind the text 7 | -------------------------------------------------------------------------------- /tags/general-technique-18.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Ensuring that a contrast ratio of at least 4.5:1 exists 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G18.html 5 | --- 6 | G18: Ensuring that a contrast ratio of at least 4.5:1 exists between text (and images of text) and background behind the text 7 | -------------------------------------------------------------------------------- /tags/general-technique-19.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Ensuring that no component of the content flashes more than three times in any 1-second period 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G19.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-21.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Ensuring that users are not trapped in content 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G21.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Allowing the content to be paused and restarted from where it was paused 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G4.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Allowing users to complete an activity without any time limit 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G5.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-53.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Identifying the purpose of a link using link text combined with the text of the enclosing sentence 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G53.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-54.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Including a sign language interpreter in the video stream 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G54.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-55.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Linking to definitions 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G55.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-56.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Mixing audio files so that non-speech sounds are at least 20 decibels lower than the speech audio content 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G56.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-57.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Ordering the content in a meaningful sequence 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G57.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-58.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Placing a link to the alternative for time-based media immediately next to the non-text content 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G58.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-59.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Placing the interactive elements in an order that follows sequences and relationships within the content 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G59.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-60.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Playing a sound that turns off automatically within three seconds 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G60.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-61.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Presenting repeated components in the same relative order each time they appear 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G61.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-62.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a glossary 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G62.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-63.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a site map 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G63.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-64.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a Table of Contents 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G64.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-65.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a breadcrumb trail 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G65.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-68.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a short text alternative that describes the purpose of live audio-only and live video-only content 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G68.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-69.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing an alternative for time based media 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G69.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-70.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a function to search an online dictionary 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G70.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-71.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a help link on every Web page 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G71.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-73.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a long description in another location with a link 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G73.html 5 | --- 6 | G73: Providing a long description in another location with a link to it that is immediately adjacent to the non-text content 7 | -------------------------------------------------------------------------------- /tags/general-technique-74.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a long description in text near the non-text content 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G74.html 5 | --- 6 | G74: Providing a long description in text near the non-text content, with a reference to the location of the long description in the short description 7 | -------------------------------------------------------------------------------- /tags/general-technique-75.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a mechanism to postpone any updating of content 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G75.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-76.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a mechanism to request an update of the content instead of updating automatically 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G76.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-78.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a second, user-selectable, audio track that includes audio descriptions 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G78.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-79.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a spoken version of the text 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G79.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-8.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a movie with extended audio descriptions 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G8.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-80.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a submit button to initiate a change of context 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G80.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-81.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a synchronized video of the sign language interpreter 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G81.html 5 | --- 6 | G81: Providing a synchronized video of the sign language interpreter that can be displayed in a different viewport or overlaid on the image by the player 7 | -------------------------------------------------------------------------------- /tags/general-technique-82.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a text alternative that identifies the purpose of the non-text content 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G82.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-83.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing text descriptions to identify required fields that were not completed 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G83.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-84.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a text description when the user provides information that is not in the list of allowed values 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G84.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-85.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a text description when user input falls outside the required format or values 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G85.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-86.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing a text summary that can be understood by people with lower secondary education level reading ability 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G86.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-87.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing closed captions 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G87.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-88.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing descriptive titles for Web pages 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G88.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-89.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing expected data format and example 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G89.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-9.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Creating captions for live synchronized media 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G9.html 5 | --- -------------------------------------------------------------------------------- /tags/general-technique-90.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Providing keyboard-triggered event handlers 3 | description: "" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/G90.html 5 | --- -------------------------------------------------------------------------------- /tags/html-33.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Success Technique H-33 3 | description: "Supplementing link text with the title attribute" 4 | url: https://www.w3.org/TR/WCAG20-TECHS/html.html#H33 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-1-1-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.1.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html 4 | level: A 5 | --- 6 | Non-text Content (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.1 3 | description: "Guideline 1.1 Text Alternatives" 4 | url: https://www.w3.org/TR/WCAG21/#text-alternatives 5 | --- -------------------------------------------------------------------------------- /tags/wcag-1-2-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/audio-only-and-video-only-prerecorded.html 4 | level: A 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-1-2-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/captions-prerecorded.html 4 | level: A 5 | --- 6 | Prerecorded Captions (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-2-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/audio-description-or-media-alternative-prerecorded.html 4 | level: A 5 | --- 6 | Audio Description or Media Alternative (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-2-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/captions-live.html 4 | level: AA 5 | --- 6 | Live Captions (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-2-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/audio-description-prerecorded.html 4 | level: AA 5 | --- 6 | Prerecorded Media Audio Description (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-2-6.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.6 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/sign-language-prerecorded.html 4 | level: AAA 5 | --- 6 | Prerecorded Media Sign Language (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-2-7.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.7 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/extended-audio-description-prerecorded.html 4 | level: AAA 5 | --- 6 | Prerecorded Media Extended Audio Description (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-2-8.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.8 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/media-alternative-prerecorded.html 4 | level: AAA 5 | --- 6 | Prerecorded Media Alternative (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-2-9.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2.9 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/audio-only-live.html 4 | level: AAA 5 | --- 6 | Live Media Audio Only (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.2 3 | description: "Time-based Media" 4 | url: https://www.w3.org/TR/WCAG21/#time-based-media 5 | --- -------------------------------------------------------------------------------- /tags/wcag-1-3-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.3.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html 4 | level: A 5 | --- 6 | Info and Relationships (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-3-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.3.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/meaningful-sequence.html 4 | level: A 5 | --- 6 | Meaningful Sequence (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-3-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.3.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/sensory-characteristics.html 4 | level: A 5 | --- 6 | Sensory Characteristics (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-3-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.3.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/orientation.html 4 | level: AA 5 | --- 6 | Orientation (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-3-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.3.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/identify-input-purpose.html 4 | level: AA 5 | --- 6 | Identify Input Purpose (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-3-6.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.3.6 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/identify-purpose.html 4 | level: AAA 5 | --- 6 | Identify Purpose (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.3 3 | description: "WCAG Guideline - Adaptable" 4 | url: https://www.w3.org/TR/WCAG21/#adaptable 5 | --- -------------------------------------------------------------------------------- /tags/wcag-1-4-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.1 3 | description: Use of Color 4 | url: https://www.w3.org/WAI/WCAG21/Understanding/use-of-color.html 5 | level: A 6 | --- 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-10.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.10 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/reflow.html 4 | level: AA 5 | --- 6 | Reflow (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-11.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.11 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/non-text-contrast.html 4 | level: AA 5 | --- 6 | Non-text Contrast (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-12.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.12 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/text-spacing.html 4 | level: AA 5 | --- 6 | Text Spacing (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-13.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.13 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/content-on-hover-or-focus.html 4 | level: AA 5 | --- 6 | Content on Hover or Focus (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/audio-control.html 4 | level: A 5 | --- 6 | Audio Control (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html 4 | level: AA 5 | --- 6 | Minimum Contrast (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/resize-text.html 4 | level: AA 5 | --- 6 | Resize Text (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/images-of-text.html 4 | level: AA 5 | --- 6 | Images of Text (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-6.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.6 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/contrast-enhanced.html 4 | level: AAA 5 | --- 6 | Enhanced Contrast (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-7.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.7 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/low-or-no-background-audio.html 4 | level: AAA 5 | --- 6 | Low or No Background Audio (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-8.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.8 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/visual-presentation.html 4 | level: AAA 5 | --- 6 | Visual Presentation (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4-9.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4.9 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/images-of-text-no-exception.html 4 | level: AAA 5 | --- 6 | Images of Text (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-1-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 1.4 3 | description: "Guideline - Distinguishable" 4 | url: https://www.w3.org/TR/WCAG21/#distinguishable 5 | --- -------------------------------------------------------------------------------- /tags/wcag-2-1-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.1.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/keyboard.html 4 | level: A 5 | --- 6 | Keyboard (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-1-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.1.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/no-keyboard-trap.html 4 | level: A 5 | --- 6 | No Keyboard Trap (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-1-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.1.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/keyboard-no-exception.html 4 | level: AAA 5 | --- 6 | Keyboard (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-1-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.1.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/character-key-shortcuts.html 4 | level: A 5 | --- 6 | Character Key Shortcuts (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.1 3 | description: "Keyboard Accessible" 4 | url: https://www.w3.org/TR/WCAG21/#keyboard-accessible 5 | --- -------------------------------------------------------------------------------- /tags/wcag-2-2-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.2.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/timing-adjustable.html 4 | level: A 5 | --- 6 | Timing Adjustable (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-2-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.2.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/pause-stop-hide.html 4 | level: A 5 | --- 6 | Pause, Stop, Hide (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-2-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.2.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/no-timing.html 4 | level: AAA 5 | --- 6 | No Timing (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-2-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.2.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/interruptions.html 4 | level: AAA 5 | --- 6 | Interruptions (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-2-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.2.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/re-authenticating.html 4 | level: AAA 5 | --- 6 | Re-authenticating (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-2-6.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.2.6 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/timeouts.html 4 | level: AAA 5 | --- 6 | Timeouts (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.2 3 | description: "Enough Time" 4 | url: https://www.w3.org/TR/WCAG21/#enough-time 5 | --- -------------------------------------------------------------------------------- /tags/wcag-2-3-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.3.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/three-flashes-or-below-threshold.html 4 | level: A 5 | --- 6 | Three Flashes or Below Threshold (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-3-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.3.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/three-flashes.html 4 | level: AAA 5 | --- 6 | Three Flashes (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-3-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.3.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/animation-from-interactions.html 4 | level: AAA 5 | --- 6 | Animation from Interactions (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.3 3 | description: "Seizures and Physical Reactions" 4 | url: https://www.w3.org/TR/WCAG21/#seizures-and-physical-reactions 5 | --- -------------------------------------------------------------------------------- /tags/wcag-2-4-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/bypass-blocks.html 4 | level: A 5 | --- 6 | Bypass Blocks 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-10.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.10 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/section-headings.html 4 | level: AAA 5 | --- 6 | Section Headings (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/page-titled.html 4 | level: A 5 | --- 6 | Page Titled (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/focus-order.html 4 | level: A 5 | --- 6 | Focus Order (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/link-purpose-in-context.html 4 | level: A 5 | --- 6 | Link Purpose In Context (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/multiple-ways.html 4 | level: AA 5 | --- 6 | Multiple Ways (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-6.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.6 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/headings-and-labels.html 4 | level: AA 5 | --- 6 | Headings and Labels (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-7.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.7 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/focus-visible.html 4 | level: AA 5 | --- 6 | Focus Visible (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-8.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.8 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/location.html 4 | level: AAA 5 | --- 6 | Location (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4-9.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4.9 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/link-purpose-link-only.html 4 | level: AAA 5 | --- 6 | Link Purpose, Link Only (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.4 3 | description: "Navigable: Provide ways to help users navigate, find content, and determine where they are." 4 | url: https://www.w3.org/TR/WCAG21/#navigable 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-2-5-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.5.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/pointer-gestures.html 4 | level: A 5 | --- 6 | Pointer Gestures (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-2-5-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.5.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/pointer-cancellation.html 4 | level: A 5 | --- 6 | Pointer Gestures 7 | -------------------------------------------------------------------------------- /tags/wcag-2-5-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.5.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/label-in-name.html 4 | level: A 5 | --- 6 | Label in Name 7 | -------------------------------------------------------------------------------- /tags/wcag-2-5-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.5.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/motion-actuation.html 4 | level: A 5 | --- 6 | Motion Actuation 7 | -------------------------------------------------------------------------------- /tags/wcag-2-5-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.5.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/target-size 4 | level: AAA 5 | --- 6 | Target Size 7 | -------------------------------------------------------------------------------- /tags/wcag-2-5-6.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.5.6 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/concurrent-input-mechanisms.html 4 | level: AAA 5 | --- 6 | Concurrent Input Mechanisms 7 | -------------------------------------------------------------------------------- /tags/wcag-2-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 2.5 3 | description: "Input Modalities: Make it easier for users to operate functionality through various inputs beyond keyboard." 4 | url: https://www.w3.org/TR/WCAG21/#input-modalities 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-3-1-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.1.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/language-of-page.html 4 | level: A 5 | --- 6 | Language of Page (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-1-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.1.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/language-of-parts.html 4 | level: AA 5 | --- 6 | Language of Parts (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-1-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.1.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/unusual-words.html 4 | level: AAA 5 | --- 6 | Unusual Words (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-1-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.1.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/abbreviations.html 4 | level: AAA 5 | --- 6 | Abbreviations (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-1-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.1.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/reading-level.html 4 | level: AAA 5 | --- 6 | Reading Level (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-1-6.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.1.6 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/pronunciation.html 4 | level: AAA 5 | --- 6 | Pronunciation (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.1 3 | description: "Readable" 4 | url: https://www.w3.org/TR/WCAG21/#readable 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-3-2-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.2.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/on-focus.html 4 | level: A 5 | --- 6 | On Focus (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-2-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.2.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/on-input.html 4 | level: A 5 | --- 6 | On Input (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-2-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.2.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/consistent-navigation.html 4 | level: A 5 | --- 6 | Consistent Navigation (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-2-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.2.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/consistent-identification.html 4 | level: AA 5 | --- 6 | Consistent Identification (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-2-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.2.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/change-on-request.html 4 | level: AAA 5 | --- 6 | Change on Request (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.2 3 | description: "Predictable" 4 | url: https://www.w3.org/TR/WCAG21/#predictable 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-3-3-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.3.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/error-identification.html 4 | level: A 5 | --- 6 | Error Identification (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-3-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.3.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/labels-or-instructions.html 4 | level: A 5 | --- 6 | Labels or Instructions (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-3-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.3.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/error-suggestion.html 4 | level: AA 5 | --- 6 | Error Suggestion (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-3-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.3.4 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/error-prevention-legal-financial-data.html 4 | level: AA 5 | --- 6 | Error Prevention (Legal, Financial, Data) (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-3-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.3.5 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/help.html 4 | level: AAA 5 | --- 6 | Help (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-3-6.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.3.6 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/error-prevention-all.html 4 | level: AAA 5 | --- 6 | Error Prevention (All) (Level AAA) 7 | -------------------------------------------------------------------------------- /tags/wcag-3-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 3.3 3 | description: "Input Assistance" 4 | url: https://www.w3.org/TR/WCAG21/#input-assistance 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-4-1-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 4.1.1 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/parsing.html 4 | level: A 5 | --- 6 | Parsing (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-4-1-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 4.1.2 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/name-role-value.html 4 | level: A 5 | --- 6 | Name, Role, Value (Level A) 7 | -------------------------------------------------------------------------------- /tags/wcag-4-1-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 4.1.3 3 | url: https://www.w3.org/WAI/WCAG21/Understanding/status-messages.html 4 | level: AA 5 | --- 6 | Status Messages (Level AA) 7 | -------------------------------------------------------------------------------- /tags/wcag-4-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 4.1 3 | description: "Compatible" 4 | url: https://www.w3.org/TR/WCAG21/#compatible 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.1 3 | description: "Interpreting Normative Requirements" 4 | url: https://www.w3.org/TR/WCAG21/#interpreting-normative-requirements 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-2-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.2.1 3 | description: "Conformance Level" 4 | url: https://www.w3.org/TR/WCAG21/#cc1 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-2-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.2.2 3 | description: "Full pages" 4 | url: https://www.w3.org/TR/WCAG21/#cc2 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-2-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.2.3 3 | description: "Complete processes" 4 | url: https://www.w3.org/TR/WCAG21/#cc3 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-2-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.2.4 3 | description: "Only Accessibility-Supported Ways of Using Technologies" 4 | url: https://www.w3.org/TR/WCAG21/#cc4 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-2-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.2.5 3 | description: "Non-Interference" 4 | url: https://www.w3.org/TR/WCAG21/#cc5 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.2 3 | description: "Conformance Requirements" 4 | url: https://www.w3.org/TR/WCAG21/#conformance-reqs 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-3-1.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.3.1 3 | description: "Required Components of a Conformance Claim" 4 | url: https://www.w3.org/TR/WCAG21/#conformance-required 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-3-2.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.3.2 3 | description: "Optional Components of a Conformance Claim" 4 | url: https://www.w3.org/TR/WCAG21/#conformance-optional 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-3.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.3 3 | description: "Conformance Claims (Optional)" 4 | url: https://www.w3.org/TR/WCAG21/#conformance-claims 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-4.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.4 3 | description: "Statement of Partial Conformance - Third Party Content" 4 | url: https://www.w3.org/TR/WCAG21/#conformance-partial 5 | --- 6 | -------------------------------------------------------------------------------- /tags/wcag-5-5.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: WCAG 5.5 3 | description: "Statement of Partial Conformance - Language" 4 | url: https://www.w3.org/TR/WCAG21/#conformance-partial-lang 5 | --- 6 | -------------------------------------------------------------------------------- /violations/autocomplete-values.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid `autocomplete` attribute values 3 | tags: 4 | - failure-107 5 | - wcag-1-3-5 6 | linting: couldexist 7 | testing: exists 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | Autocomplete attribute values should have valid values. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | It's possible that a linting rule could be created for this potential failure; check for the presence of the `autocomplete` attribute. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `autocomplete-valid` rule. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /violations/avoid-blink.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Obsolete `blink` element use 3 | tags: 4 | - failure-47 5 | - wcag-2-2-2 6 | linting: exists 7 | testing: couldexist 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | The `` element is obsolete and should not be used. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | See the [`ember-template-lint`](https://github.com/ember-template-lint/ember-template-lint) library for the `no-obsolete-elements` rule. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | It's possible that a check could be created for this potential failure. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /violations/blank-th-elements.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing table header text 3 | tags: 4 | - wcag-1-3-1 5 | - wcag-4-1-2 6 | linting: couldexist 7 | testing: couldexist 8 | author: couldexist 9 | manual: mustexist 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | A table should not have any blank `` elements. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | It's possible that a linting rule could be created for this potential failure. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | See the [axe-core](https://github.com/dequelabs/axe-core) library for the [empty-table-header](https://dequeuniversity.com/rules/axe/4.9/empty-table-header?application=RuleDescription) rule. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /violations/button-link-text.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid button/link text 3 | tags: 4 | - failure-84 5 | - wcag-1-3-1 6 | linting: exists 7 | testing: couldexist 8 | author: couldexist 9 | manual: shouldexist 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | Buttons and links should not use non-descriptive, non-unique words or phrases as the element's text content. Examples include "read more", "more", "read about it here", "click here". 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | See `ember-template-lint` for the `no-invalid-link-text` rule. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | It's possible that a check could be created for this potential failure. Review the linting rule and adapt for test suite. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Check the page for the presence of links or buttons that have "more", "read more", or similarly not meaningful text. 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/color-specification.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing color/background-color property specification 3 | tags: 4 | - wcag-1-4-3 5 | - wcag-1-4-6 6 | - wcag-1-4-8 7 | - failure-24 8 | linting: couldexist 9 | testing: couldexist 10 | author: shouldexist 11 | manual: mustexist 12 | --- 13 | 14 | 25 | 26 | # Potential A11y Violation:
{{ $frontmatter.title }} 27 | 28 | ## Point of Failure 29 | 30 | If the `color` property is specified; the `background-color` must also be specified, and vice-versa. 31 | 32 | ## Available Automation Evaluation 33 | 34 | In checking known available linting and testing tools, these are our findings. 35 | 36 | ### Linting {{ normalize($frontmatter.linting) }} 37 | 38 | Potentially Automatable with CSS linting. 39 | 40 | ### Testing {{ normalize($frontmatter.testing) }} 41 | 42 | It's possible that a check could be created for this potential failure. 43 | 44 | ## Other Test Methods 45 | 46 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 47 | 48 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 49 | 50 | Ideally, developers can train themselves to always declare a color and a background color in their CSS. 51 | 52 | ### Manual Test {{ normalize($frontmatter.manual) }} 53 | 54 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /violations/content-identification-shape-location.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Incorrect element identifiers (shape/location) 3 | tags: 4 | - failure-14 5 | - wcag-1-3-3 6 | linting: couldexist 7 | testing: couldexist 8 | author: couldexist 9 | manual: mustexist 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | Content should not be identified only through its shape or location (e.g., "the button on the bottom right", or "the round button") 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | Potentially automatable but in a limited fashion. It could be a little tricky, but perhaps a dictionary of shape and location phrases could be created, and strings of text could be compared against that dictionary. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | Potentially automatable but in a limited fashion. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should educate themselves about this rule, and avoid it while creating code. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /violations/content-meaning-through-css.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Inconsistent content meaning from CSS positioning changes 3 | tags: 4 | - wcag-1-3-2 5 | - failure-1 6 | linting: couldexist 7 | testing: couldexist 8 | author: shouldexist 9 | manual: mustexist 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | Content meaning should not be changed through CSS positioning. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | Potentially Automatable through CSS linting. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | It's possible that a check could be created for this potential failure. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /violations/contentinfo-as-body-descendant.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Misplaced contentinfo landmark element 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
{{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | The contentinfo landmark should be a direct descendant of the body element. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | It does not seem possible to have an automated test for this potential failure, yet. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `landmark-contentinfo-is-top-level` rule. 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/css-faux-headings.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Faux headings via CSS 3 | tags: 4 | - failure-2 5 | - wcag-1-3-1 6 | linting: couldexist 7 | testing: exists 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | CSS should not be used to make a paragraph or other plain text look like a heading. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | Potentially automatable with a CSS linter. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | See rule `p-as-heading` in the `axe-core` a11y testing library. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Inspect headings and ensure that they are using the appropriate semantic equivalent (h1-h6). 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/faux-lists.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Faux Lists 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: exists 7 | author: shouldexist 8 | manual: shouldexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
{{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Lists should use the HTML list (ul/li, ol/li). 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | How could we programmatically determine that it is a list without the required markup? If you have any ideas about how this could be done, please [file an issue on this app's GitHub Repository](https://github.com/MelSumner/a11y-automation/issues). 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | See `axe-core` library for the `listitem` rule. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Do not put lists in anything other than ul/ol elements. Write tests that ensure that if the code is changed, regressions are not introduced. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review the page for lists. Inspect the DOM and ensure that the appropriate markup is used. 47 | 48 | 49 | -------------------------------------------------------------------------------- /violations/hidden-interactive-elements.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Hidden interactive elements 3 | tags: 4 | - wcag-1-3-1 5 | - wcag-4-1-2 6 | linting: couldexist 7 | testing: exists 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | Elements with the `aria-hidden` attribute should not contain focusable (interactive) elements. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | It's possible that a linting rule could be created for this potential failure. 35 | 36 | ### Testing {{ normalize($frontmatter.testing) }} 37 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `aria-hidden-focus` rule. 38 | 39 | ## Other Test Methods 40 | 41 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 42 | 43 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 44 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 45 | 46 | ### Manual Test {{ normalize($frontmatter.manual) }} 47 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /violations/hidden-tooltip-content.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Hidden tooltip content 3 | tags: 4 | - wcag-1-3-1 5 | linting: couldexist 6 | testing: couldexist 7 | author: couldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
{{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Tooltip content must not be hidden from screen readers. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | Potentially automatable to some extent. Look for tooltips and ensure that they do not have any hidden attributes on them. 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | Potentially automatable to some extent. Look for tooltips and ensure that they do not have any hidden attributes on them. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developer must ensure that tooltips can be accessed via keyboard only, and must not hide tooltip content from assistive technology. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/icon-only.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing icon text (ACCNAME) 3 | tags: 4 | - wcag-1-3-3 5 | linting: couldexist 6 | testing: couldexist 7 | author: couldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
{{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | An icon should not be the only thing that conveys information to the user. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | It's possible that a linting rule could be created for this potential failure. Search template for text nodes where the only item is an icon. 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | It's possible that a linting rule could be created for this potential failure. Search text nodes for icons and determine if they are the only item in the node. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/iframe-title-unique.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing iframe title uniqueness 3 | tags: 4 | - wcag-2-4-1 5 | - wcag-4-1-2 6 | linting: couldexist 7 | testing: exists 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | If there are multiple iframe elements on the page, they should each have a unique title. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | Potentially automatable, but the test covers it rather well. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `frame-title-unique` rule. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should try to not use iframes in general; if you must, then ensure that the code does not violate this rule. Write a test to check for this if you do not use any form of automated accessibility testing. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /violations/iframe-title.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing iframe element title 3 | tags: 4 | - wcag-2-4-1 5 | - wcag-4-1-2 6 | linting: exists 7 | testing: exists 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
{{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | Iframe elements should have titles. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | See the [`ember-template-lint`](https://github.com/ember-template-lint/ember-template-lint) library for the `require-iframe-title` rule. 35 | 36 | ### Testing {{ normalize($frontmatter.testing) }} 37 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `frame-title` rule. 38 | 39 | ## Other Test Methods 40 | 41 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 42 | 43 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 44 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 45 | 46 | ### Manual Test {{ normalize($frontmatter.manual) }} 47 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /violations/input-character-counts.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing input character count availability 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: cannotexist 7 | author: shouldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
{{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | The character counts for `` elements should be made available to screen readers. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | It does not seem possible to have an automated test for this potential failure, yet. How would you programmatically identify something as a character count so an automated linting check could occur? 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | How would you programmatically identify something as a character count, so that an automated test could occur? 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/interactive-focus.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing interactive element focus 3 | tags: 4 | - wcag-2-1-1 5 | linting: couldexist 6 | testing: couldexist 7 | author: shouldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
{{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Interactive elements should be focusable. 27 | 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | It's possible that a linting rule could be created for this potential failure. 35 | 36 | ### Testing {{ normalize($frontmatter.testing) }} 37 | It's possible that a linting rule could be created for this potential failure. 38 | 39 | ## Other Test Methods 40 | 41 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 42 | 43 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 44 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 45 | 46 | ### Manual Test {{ normalize($frontmatter.manual) }} 47 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /violations/interactive-tabs.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing tab element keyboard support 3 | tags: 4 | - wcag-2-1-1 5 | linting: cannotexist 6 | testing: couldexist 7 | author: shouldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
{{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Tabs should have the correct keyboard interaction. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | It does not seem possible to have an automated test for this potential failure, yet. If you an idea about how this could be linted in an automated fashion, or are aware of an automated linting rule that already exists, please [file an issue on this app's GitHub Repository](https://github.com/MelSumner/a11y-automation/issues). 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | It's possible that a linting rule could be created for this potential failure. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/invalid-lists.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Malformed list element 3 | tags: 4 | - wcag-1-3-1 5 | linting: couldexist 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
{{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | Lists should be structured correctly (only contain `
  • `, ` 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Elements must have valid roles. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | See the [`ember-template-lint`](https://github.com/ember-template-lint/ember-template-lint) library for the `no-invalid-role` rule. 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `aria-allowed-role` rule. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/labels-in-forms.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing form element label 3 | tags: 4 | - wcag-1-3-1 5 | - wcag-4-1-2 6 | linting: exists 7 | testing: exists 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
    {{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | All form elements should have a `label`. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | See the [`ember-template-lint`](https://github.com/ember-template-lint/ember-template-lint) library for the `require-input-label` rule. 35 | 36 | ### Testing {{ normalize($frontmatter.testing) }} 37 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `label` rule. 38 | 39 | ## Other Test Methods 40 | 41 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 42 | 43 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 44 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 45 | 46 | ### Manual Test {{ normalize($frontmatter.manual) }} 47 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /violations/links-as-text.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Incorrect link styling 3 | tags: 4 | - wcag-1-4-1 5 | linting: couldexist 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Links should not look the same as the text. Links should not have the underline removed or should be distinguishable from text in a way that does not rely on color. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | Potentially automatable with a CSS linter. 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `link-in-text-block` rule. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/main-as-body-descendant.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Misplaced main element 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | The `main` landmark should be a direct descendant of the `body` element. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | It does not seem possible to have an automated test for this potential failure, yet. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `landmark-main-is-top-level` rule. 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/main-landmark-exists.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing main element 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Every page should have a `main` landmark element. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | We would need a way to identify that a specific template was a page-level template vs a component template. 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `page-has-main` rule. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/meta-redirect-time-limit.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid meta redirect 3 | tags: 4 | - wcag-2-2-1 5 | - wcag-2-2-4 6 | - wcag-3-2-5 7 | linting: exists 8 | testing: couldexist 9 | author: couldexist 10 | manual: exists 11 | --- 12 | 13 | 24 | 25 | # Potential A11y Violation:
    {{ $frontmatter.title }} 26 | 27 | ## Point of Failure 28 | A `meta` redirect with a time limit should not be used. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | See the [`ember-template-lint`](https://github.com/ember-template-lint/ember-template-lint) library for the `no-invalid-meta` rule. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | It's possible that a linting rule could be created for this potential failure. Review linting rule and see if it's adaptable. 39 | 40 | ## Other Test Methods 41 | 42 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 43 | 44 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 45 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 46 | 47 | ### Manual Test {{ normalize($frontmatter.manual) }} 48 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /violations/meta-refresh.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid meta refresh 3 | tags: 4 | - wcag-2-2-1 5 | - wcag-2-2-4 6 | - wcag-3-2-5 7 | linting: exists 8 | testing: exists 9 | author: couldexist 10 | manual: exists 11 | --- 12 | 13 | 24 | 25 | # Potential A11y Violation:
    {{ $frontmatter.title }} 26 | 27 | ## Point of Failure 28 | A `meta` refresh should not be used to reload the page. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | See the [`ember-template-lint`](https://github.com/ember-template-lint/ember-template-lint) library for the `no-invalid-meta` rule. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `meta-refresh` rule. 39 | 40 | ## Other Test Methods 41 | 42 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 43 | 44 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 45 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 46 | 47 | ### Manual Test {{ normalize($frontmatter.manual) }} 48 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /violations/multiple-landmarks.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing unique landmark element titles 3 | tags: 4 | - wcag-1-3-1 5 | linting: exists 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Page has multiple landmark elements of the same type but the `aria-label` or `aria-labelledby` attributes are missing on each. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | Automated linting exists. See the [`ember-template-lint`](https://github.com/ember-template-lint/ember-template-lint) library for the `no-duplicate-landmark-elements` rule. 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | Automated testing exists. See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `landmark-unique` rule. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/no-blink.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid use of text-decoration 3 | tags: 4 | - wcag-2-2-2 5 | - failure-4 6 | linting: couldexist 7 | testing: couldexist 8 | author: couldexist 9 | manual: mustexist 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
    {{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | The `text-decoration: blink` should not be used. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | It's possible that a linting rule could be created for this potential failure. 35 | 36 | ### Testing {{ normalize($frontmatter.testing) }} 37 | It's possible that a linting rule could be created for this potential failure. 38 | 39 | ## Other Test Methods 40 | 41 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 42 | 43 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 44 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 45 | 46 | ### Manual Test {{ normalize($frontmatter.manual) }} 47 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /violations/no-presentational-interactive.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid interactive element role 3 | tags: 4 | - wcag-1-3-1 5 | linting: couldexist 6 | testing: couldexist 7 | author: couldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | Interactive elements should not have role="presentation" or role="none" 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | It's possible that a linting rule could be created for this potential failure. Check interactive elements for the role of presentation or the role of none. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | See above 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Inspect DOM for instances of `role="presentation"` and `role="none"` and ensure that they are not attached to interactive elements. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/no-presentational-semantics.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid semantic element role 3 | tags: 4 | - wcag-1-3-1 5 | linting: exists 6 | testing: couldexist 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | The `role="presentation"` or `"none"` should not be used on content that conveys semantic information. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | See the `ember-template-lint` library for the `no-invalid-role` rule. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | It's possible that a check could be created for this potential failure. Review linting rule and adapt rule for test suite. 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Inspect DOM. Ensure that semantic html elements do not have `role` of presentation or none. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/non-text-contrast-ratio.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid non-text contrast ratio 3 | tags: 4 | - wcag-1-4-1 5 | linting: couldexist 6 | testing: couldexist 7 | author: shouldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Non-text contrast ratio should meet AA standards. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | Potentially Automatable through CSS linting. 34 | 35 | 36 | ### Testing {{ normalize($frontmatter.testing) }} 37 | It's possible that a linting rule could be created for this potential failure. 38 | 39 | ## Other Test Methods 40 | 41 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 42 | 43 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 44 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 45 | 46 | ### Manual Test {{ normalize($frontmatter.manual) }} 47 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /violations/only-one-banner.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Multiple banner landmarks exist 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | A document must not have more than one banner landmark. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | It does not seem possible to have an automated test for this potential failure, yet. 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `landmark-no-duplicate-banner` rule. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/only-one-contentinfo.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Multiple contentinfo landmark elements exist 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: couldexist 7 | author: couldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | There should not be more than one contentinfo landmark. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | It does not seem possible to have an automated test for this potential failure, yet. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `landmark-no-duplicate-contentinfo` rule. 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/only-one-main.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Multiple main landmark elements exist 3 | tags: 4 | - wcag-1-1-1 5 | linting: cannotexist 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | A document should not have more than one `main` landmark. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | It does not seem possible to have an automated test for this potential failure, yet. We would need a way to identify that a specific template was a "page" template, and that it was the primary page template for the site. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `landmark-no-duplicate-main` rule. 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/orientation-lock.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Incorrect use of orientation lock 3 | tags: 4 | - wcag-1-3-4 5 | linting: couldexist 6 | testing: exists 7 | author: couldexist 8 | manual: exists 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | Content should not have its orientation locked to portrait or landscape view. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | Potentially automatable with a CSS linter. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `css-orientation-lock` rule. 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/orientation-message.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid device orientation message 3 | tags: 4 | - wcag-1-3-4 5 | linting: couldexist 6 | testing: couldexist 7 | author: couldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | A message should not be shown that asks the user to change the orientation of the device. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | Potentially automatable through CSS linting. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | Potentially automatable but needs further analysis. 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Rotate the device and ensure that a message does not appear to ask you to change your device's orientation. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/positive-tabindex.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid element tabindex attribute value 3 | tags: 4 | - wcag-2-4-3 5 | - failure-44 6 | linting: exists 7 | testing: couldexist 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
    {{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | The `tabindex` attribute should not be used to create a tab order that does not preserve meaning and operability 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | Automated linting exists. See the [`ember-template-lint`](https://github.com/ember-template-lint/ember-template-lint) library for the `no-positive-tabindex` rule. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | See the [`axe-core`](https://github.com/dequelabs/axe-core) library for the `tabindex` rule. 41 | 42 | ## Other Test Methods 43 | 44 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 45 | 46 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 47 | 48 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 49 | 50 | ### Manual Test {{ normalize($frontmatter.manual) }} 51 | 52 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 53 | 54 | 55 | 56 | -------------------------------------------------------------------------------- /violations/pre-tables.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid pre element use for tabular data 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: cannotexist 7 | author: couldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | The `
    ` element should not be used to mark up tabular information.
    27 | 
    28 | ## Available Automation Evaluation
    29 | 
    30 | In checking known available linting and testing tools, these are our findings.
    31 | 
    32 | ### Linting {{ normalize($frontmatter.linting) }}
    33 | It does not seem possible to have an automated test for this potential failure, yet.
    34 | 
    35 | ### Testing {{ normalize($frontmatter.testing) }}
    36 | It does not seem possible to have an automated test for this potential failure, yet.
    37 | 
    38 | ## Other Test Methods
    39 | 
    40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation.
    41 | 
    42 | ### Developer Authored Test {{ normalize($frontmatter.author) }}
    43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed.
    44 | 
    45 | ### Manual Test {{ normalize($frontmatter.manual) }}
    46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required.
    47 | 
    48 | 
    49 | 
    50 | 
    
    
    --------------------------------------------------------------------------------
    /violations/pseudo-content.md:
    --------------------------------------------------------------------------------
     1 | ---
     2 | title: Invalid use of pseudo content
     3 | tags: 
     4 |   - wcag-1-3-1
     5 | linting: couldexist
     6 | testing: couldexist
     7 | author: couldexist
     8 | manual: mustexist
     9 | ---
    10 | 
    11 | 
    22 | 
    23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | Content should not be inserted by using the `:before` and `:after` pseudo-elements or the `content` property in CSS. 27 | 28 | ## Available Automation Evaluation 29 | 30 | In checking known available linting and testing tools, these are our findings. 31 | 32 | ### Linting {{ normalize($frontmatter.linting) }} 33 | Potentially Automatable with a CSS linter. 34 | 35 | ### Testing {{ normalize($frontmatter.testing) }} 36 | It's possible that a linting rule could be created for this potential failure. 37 | 38 | ## Other Test Methods 39 | 40 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 41 | 42 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 43 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 44 | 45 | ### Manual Test {{ normalize($frontmatter.manual) }} 46 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /violations/required-and-error-fields.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Invalid required or error field indicators 3 | tags: 4 | - wcag-1-4-1 5 | - failure-81 6 | linting: couldexist 7 | testing: cannotexist 8 | author: shouldexist 9 | manual: mustexist 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
    {{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | 28 | Required or error fields should not be identified only using color differences. 29 | 30 | ## Available Automation Evaluation 31 | 32 | In checking known available linting and testing tools, these are our findings. 33 | 34 | ### Linting {{ normalize($frontmatter.linting) }} 35 | 36 | It's possible that a linting rule could be created for this potential failure. 37 | 38 | ### Testing {{ normalize($frontmatter.testing) }} 39 | 40 | It does not seem possible to have an automated test for this potential failure, yet. 41 | 42 | ## Other Test Methods 43 | 44 | ## Other Test Methods 45 | 46 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 47 | 48 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 49 | 50 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 51 | 52 | ### Manual Test {{ normalize($frontmatter.manual) }} 53 | 54 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 55 | 56 | 57 | 58 | -------------------------------------------------------------------------------- /violations/search-result-announcements.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing search result announcements 3 | tags: 4 | - wcag-1-3-1 5 | linting: cannotexist 6 | testing: cannotexist 7 | author: couldexist 8 | manual: mustexist 9 | --- 10 | 11 | 22 | 23 | # Potential A11y Violation:
    {{ $frontmatter.title }} 24 | 25 | ## Point of Failure 26 | 27 | Search results returned by typeahead or search components should be updated/announced correctly to screen readers. 28 | 29 | ## Available Automation Evaluation 30 | 31 | In checking known available linting and testing tools, these are our findings. 32 | 33 | ### Linting {{ normalize($frontmatter.linting) }} 34 | 35 | It does not seem possible to have an automated test for this potential failure, yet. 36 | 37 | ### Testing {{ normalize($frontmatter.testing) }} 38 | 39 | It does not seem possible to have an automated test for this potential failure, yet. 40 | 41 | ## Other Test Methods 42 | 43 | In addition to automated tests, there are other types of tests that could be conducted to prevent this potential violation. 44 | 45 | ### Developer Authored Test {{ normalize($frontmatter.author) }} 46 | 47 | Developers should make sure that their code does not violate this rule, and try to write a test that would prevent a regression in accessibility if the code is later changed. 48 | 49 | ### Manual Test {{ normalize($frontmatter.manual) }} 50 | 51 | Review page and ensure the point of failure does not exist, inspecting the DOM where required. 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /violations/select-accessible-name.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Missing select element label (ACCNAME) 3 | tags: 4 | - wcag-1-3-1 5 | - wcag-4-1-2 6 | linting: exists 7 | testing: exists 8 | author: couldexist 9 | manual: exists 10 | --- 11 | 12 | 23 | 24 | # Potential A11y Violation:
    {{ $frontmatter.title }} 25 | 26 | ## Point of Failure 27 | All `