askill
wcag-compliance

wcag-complianceSafety 100Repository

WCAG 2.2 AA accessibility compliance patterns for web applications. Use when auditing accessibility or implementing WCAG requirements.

7 stars
1.2k downloads
Updated 2/8/2026

Package Files

Loading files...
SKILL.md

WCAG Compliance

Web Content Accessibility Guidelines 2.2 AA implementation for inclusive, legally compliant web applications.

Overview

  • Building accessible UI components from scratch
  • Auditing applications for ADA/Section 508 compliance
  • Implementing keyboard navigation and focus management
  • Supporting screen readers and assistive technologies
  • Fixing color contrast and visual accessibility issues

Quick Reference

Semantic HTML Structure

<main>
  <article>
    <header><h1>Page Title</h1></header>
    <section aria-labelledby="features-heading">
      <h2 id="features-heading">Features</h2>
      <ul><li>Feature 1</li></ul>
    </section>
    <aside aria-label="Related content">...</aside>
  </article>
</main>

ARIA Labels and States

// Icon-only button
<button aria-label="Save document">
  <svg aria-hidden="true">...</svg>
</button>

// Form field with error
<input
  id="email"
  aria-required="true"
  aria-invalid={!!error}
  aria-describedby={error ? "email-error" : "email-hint"}
/>
{error && <p id="email-error" role="alert">{error}</p>}

Color Contrast (CSS)

:root {
  --text-primary: #1a1a1a;   /* 16.1:1 on white - normal text */
  --text-secondary: #595959; /* 7.0:1 on white - secondary */
  --focus-ring: #0052cc;     /* 7.3:1 - focus indicator */
}
:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 2px;
}

WCAG 2.2 AA Checklist

CriterionRequirementTest
1.1.1 Non-textAlt text for imagesaxe-core scan
1.3.1 InfoSemantic HTML, headingsManual + automated
1.4.3 Contrast4.5:1 text, 3:1 largeWebAIM checker
1.4.11 Non-text Contrast3:1 UI componentsManual inspection
2.1.1 KeyboardAll functionality via keyboardTab through
2.4.3 Focus OrderLogical tab sequenceManual test
2.4.7 Focus VisibleClear focus indicatorVisual check
2.4.11 Focus Not ObscuredFocus not hidden by sticky elementsscroll-margin-top
2.5.7 DraggingSingle-pointer alternativeButton fallback
2.5.8 Target SizeMin 24x24px interactiveCSS audit
4.1.2 Name/Role/ValueProper ARIA, labelsScreen reader test

Key Decisions

DecisionChoiceRationale
Conformance levelWCAG 2.2 AALegal standard (ADA, Section 508)
Contrast ratio4.5:1 normal, 3:1 largeAA minimum requirement
Target size24px min, 44px touch2.5.8 + mobile usability
Focus indicator3px solid outlineHigh visibility, 3:1 contrast
Live regionspolite default, assertive for errorsAvoids interruption
Decorative imagesalt="" role="presentation"Hide from AT
Skip linkFirst focusable elementKeyboard user efficiency

Anti-Patterns (FORBIDDEN)

  • Div soup: Using <div> instead of semantic elements (<nav>, <main>, <article>)
  • Color-only information: Status indicated only by color without icon/text
  • Missing labels: Form inputs without associated <label> or aria-label
  • Keyboard traps: Focus that cannot escape without mouse
  • Auto-playing media: Audio/video that plays without user action
  • Removing focus outline: outline: none without replacement indicator
  • Positive tabindex: Using tabindex > 0 (disrupts natural order)
  • Empty links/buttons: Interactive elements without accessible names
  • ARIA overuse: Using ARIA when semantic HTML suffices

Related Skills

  • a11y-testing - Automated accessibility testing with axe-core and Playwright
  • design-system-starter - Accessible component library patterns
  • i18n-date-patterns - RTL layout and locale-aware formatting
  • motion-animation-patterns - Reduced motion and animation accessibility

Capability Details

semantic-html

Keywords: semantic, landmark, heading, structure, html5, main, nav, article Solves:

  • Proper document structure with landmarks
  • Heading hierarchy (h1-h6 in order)
  • Form fieldsets and legends
  • Lists for grouped content

aria-patterns

Keywords: aria, role, state, property, live-region, alert, status Solves:

  • Custom widget accessibility (tabs, menus, dialogs)
  • Dynamic content announcements
  • Expanded/collapsed states
  • Error/validation messaging

focus-management

Keywords: keyboard, focus, tab, trap, modal, skip-link, roving Solves:

  • Modal focus trapping
  • Skip links for navigation
  • Roving tabindex for widgets
  • Focus restoration after dialogs

color-contrast

Keywords: contrast, color, wcag, perceivable, vision, ratio Solves:

  • Text contrast ratios (4.5:1 / 3:1)
  • UI component contrast (3:1)
  • Focus indicator visibility
  • Non-color status indicators

Install

Download ZIP
Requires askill CLI v1.0+

AI Quality Score

94/100Analyzed 2/12/2026

A high-quality, comprehensive reference guide for WCAG 2.2 AA compliance. It provides actionable code snippets, a clear checklist, decision rationales, and a list of anti-patterns, making it highly effective for auditing and implementation.

100
95
98
92
90

Metadata

Licenseunknown
Version1.0.0
Updated2/8/2026
PublisherNeverSight

Tags

testing