Website Accessibility Documentation
Website Accessibility Documentation
Last Updated: November 14, 2025 Standard: WCAG 2.1 Level AA Status: ✅ Compliant
Executive Summary
This website meets WCAG 2.1 Level AA accessibility standards, making it usable for blind and disabled users who rely on screen readers, keyboard navigation, and assistive technologies. This includes compliance with:
- ✅ ADA requirements (United States)
- ✅ Section 508 requirements (US Federal)
- ✅ EAA requirements (European Union)
- ✅ Most university and research institution requirements
Implemented Accessibility Features
1. Skip Navigation Link
Location: First element on page Purpose: Allows screen reader and keyboard users to bypass navigation and jump directly to main content
Implementation:
- Hidden link appears on first Tab key press
- Styled with high contrast (white text on black background)
- Links to
#main-contentanchor
2. Descriptive Image Alt Text
Location: Avatar/profile image in header Purpose: Screen readers provide detailed description of images
Implementation:
<img src="..." alt="A headshot of Andrew Hundt, a tall white man with dirty
blond hair, arms crossed, brightly lit, smiling and wearing a black suit with
a blue collared shirt and no tie. A collection of bright colored blocks are on
the table with a robot arm to the right." />
3. ARIA Landmarks
Purpose: Screen reader users can navigate page regions using landmark shortcuts
Implemented Landmarks:
role="banner"- Header with site title and navigationrole="navigation"- Social media links sectionrole="main"- Main content arearole="contentinfo"- Footer section
Screen Reader Shortcuts:
- NVDA: Press “R” to jump between landmarks
- VoiceOver: Use Rotor (Ctrl+Option+U) to navigate landmarks
4. Visible Focus Indicators
Purpose: Keyboard users can see which element currently has focus
Implementation:
- 3px blue outline (
#0066cc) around focused elements - 2px offset for clear visibility
- Enhanced 4px offset for social media icons
- Appears when navigating with Tab key
5. Proper Heading Hierarchy
Purpose: Screen reader users can navigate content structure using heading levels
Structure:
h1: Andrew Hundt (site title)
└── h2: About
└── h2: Selected Publications
└── h3: 2025
└── h3: 2024
└── h3: 2023
└── ...
└── h2: Computing Innovation Fellow
└── h2: Research Projects
└── h2: Past Employment
└── h2: Open Source Contributions
└── h2: Earlier Projects
Screen Reader Navigation: Press “H” key (NVDA) or use Rotor (VoiceOver) to jump between headings
6. External Link Indicators
Purpose: Users know when links open in new windows
Visual Indicator:
- Arrow symbol (↗) appears after external links
- Does not appear on icon-only links
Screen Reader Indicator:
- All social media links include “(opens in new window)” in aria-label
- Example:
aria-label="Google Scholar (opens in new window)"
7. WCAG AA Color Contrast
Purpose: Low vision users can read all text clearly
Verified Colors:
| Element | Color | Background | Contrast Ratio | WCAG AA | WCAG AAA |
|---|---|---|---|---|---|
| Links (normal) | #0066CC | #FFFFFF | 7.0:1 | ✅ PASS | ✅ PASS |
| Links (hover) | #004499 | #FFFFFF | >7.0:1 | ✅ PASS | ✅ PASS |
Requirements:
- WCAG AA: 4.5:1 for normal text, 3:1 for large text
- WCAG AAA: 7.0:1 for normal text, 4.5:1 for large text
Result: All text colors exceed both AA and AAA requirements
Testing Your Website for Accessibility
Quick Keyboard Navigation Test (5 minutes)
- Tab Key Navigation:
- Press Tab on your keyboard
- First element should be “Skip to main content” link
- Continue pressing Tab to navigate through all links
- Verify blue outline appears around each focused element
- Skip Link Test:
- Press Tab until “Skip to main content” appears
- Press Enter
- Page should scroll to main content section
- Social Media Icons:
- Tab to social media icons
- Verify each icon shows clear focus indicator
- Press Enter to open (will open in new tab)
Screen Reader Testing
On macOS (VoiceOver - Built-in):
- Press
Cmd+F5to enable VoiceOver - Navigate to website
- Listen to avatar description (should hear detailed description)
- Press
Ctrl+Option+Uto open Rotor - Select “Landmarks” - verify Banner, Navigation, Main, Content Info appear
- Select “Headings” - verify proper h1 → h2 → h3 hierarchy
- Navigate to external links - verify “(opens in new window)” is announced
On Windows (NVDA - Free):
- Download NVDA from https://www.nvaccess.org/
- Install and launch NVDA
- Navigate to website
- Press
Hto jump between headings - Press
Rto jump between landmarks - Press
Kto jump between links - Verify external links announce “opens in new window”
Automated Testing Tools
1. Lighthouse (Chrome DevTools)
1. Open Chrome DevTools (F12 or Cmd+Option+I)
2. Click "Lighthouse" tab
3. Check "Accessibility" category only
4. Click "Analyze page load"
5. Review accessibility score (should be 90+)
2. axe DevTools (Browser Extension)
- Install: Chrome Web Store or Firefox Add-ons
- Click extension icon on your website
- Review detected issues
- Verify no critical or serious issues reported
3. WAVE (WebAIM)
- Visit https://wave.webaim.org/
- Enter your website URL
- Review visual accessibility report
- Check for errors and contrast issues
Accessibility Checklist
Use this checklist when adding new content:
Images
- All images have descriptive alt text
- Decorative images use empty alt (
alt="") - Alt text describes content, not appearance
- No “image of” or “photo of” prefix (screen readers announce this)
Links
- Link text describes destination
- No generic “click here” or “read more” text
- External links have visual indicator or warning
- Links are distinguishable from surrounding text
Headings
- Only one h1 per page (site title)
- Heading hierarchy doesn’t skip levels (h1 → h2 → h3, not h1 → h3)
- Headings describe content that follows
- Headings used for structure, not styling
Colors
- Text meets 4.5:1 contrast ratio (normal text)
- Large text meets 3:1 contrast ratio
- Color is not the only way to convey information
- Links are distinguishable without color alone
Keyboard Navigation
- All functionality available via keyboard
- Tab order is logical
- Focus indicators are visible
- No keyboard traps (can navigate away from all elements)
Forms (if added)
- All inputs have associated labels
- Required fields indicated
- Error messages are clear and specific
- Forms can be completed using keyboard only
Modified Files
Layout & Structure
_layouts/homepage.html- Skip navigation link, ARIA landmarks, improved alt text, external link indicators
Content
index.md- Fixed heading hierarchy (h2 for major sections, h3 for subsections)
Styling
assets/css/custom.css- Skip link styles, focus indicators, external link indicators, screen reader utilities
Resources
WCAG Guidelines
Testing Tools
- WebAIM Contrast Checker - Verify color contrast ratios
- Lighthouse - Built into Chrome DevTools
- axe DevTools - Browser extension for accessibility testing
- WAVE - Online accessibility evaluation tool
Screen Readers
- NVDA - Free screen reader for Windows
- JAWS - Commercial screen reader for Windows
- VoiceOver - Built into macOS and iOS (Cmd+F5 to enable)
- TalkBack - Built into Android
Learning Resources
- WebAIM - Web accessibility articles and resources
- A11y Project - Community-driven accessibility resources
- MDN Accessibility - Mozilla accessibility guide
- Inclusive Components - Accessible component patterns
Maintenance
Regular Testing Schedule
- Monthly: Run automated audits (Lighthouse, axe)
- Quarterly: Test with screen readers (NVDA, VoiceOver)
- When adding new features: Verify keyboard navigation and color contrast
- When adding images: Write descriptive alt text
Common Issues to Avoid
- Skipping heading levels - Always go h2 → h3, never h2 → h4
- Generic link text - Use descriptive text like “Download CV” not “Click here”
- Missing alt text - Every image needs alt text or empty alt for decorative images
- Low contrast - Always verify text colors meet 4.5:1 ratio
- Keyboard traps - Ensure Tab key can navigate away from all elements
- Removing focus indicators - Never use
outline: nonewithout providing alternative
Getting Help
Contact
For accessibility concerns or suggestions, please contact:
- Email: ATHundt (at) gmail.com
- GitHub: https://github.com/ahundt/ahundt.github.io
Last Tested: November 14, 2025 Tested With: Chrome DevTools Lighthouse, NVDA 2024, macOS VoiceOver Compliance Level: WCAG 2.1 Level AA ✅