Lab 3: Accessible Forms & Media Integration
Introduction
Digital accessibility ensures that all users, including those using assistive technologies, can interact with your web content. In this lab, you'll design an accessible feedback form that integrates multimedia (images, audio, or video), and then use an AI accessibility checker to identify gaps in your implementation. Finally, you’ll manually fix accessibility issues based on the AI-generated report.
This lab focuses on building with semantic HTML and WCAG-compliant media alternatives, while reinforcing how AI can support (not replace) engineering judgment.
Learning Objectives
By the end of this lab, you will be able to:
- Build a fully functional, accessible HTML feedback form
- Apply WCAG 2.1 AA best practices for form labels, landmarks, and keyboard navigation
- Integrate accessible multimedia (captioned video, alt-texted image, or audio descriptions)
- Use an AI-powered accessibility audit tool to find gaps
- Manually correct accessibility issues identified by the audit
- Understand how browser dev tools and screen readers interact with form structure
- Reflect on the role and limits of AI in accessibility engineering
Getting Started
Prerequisites
Before beginning this lab, ensure you have:
- Basic knowledge of HTML/CSS
- Understanding of semantic HTML (labels, headings, alt text, etc.)
- A modern browser (Chrome or Firefox recommended)
- A code editor (VS Code recommended)
- Access to an online AI accessibility checker (e.g., WAVE, axe DevTools, Chrome Lighthouse, or ChatGPT’s "Check Accessibility" feature if available)
No JavaScript is required for this lab.
Setup Instructions
- Create a new folder named
lab3_accessible_forms - Create an
index.htmlfile inside the folder - Open the folder in VS Code (or your preferred editor)
Lab Structure
This lab contains the following recommended files:
- README.md – Lab instructions and overview
- index.html – Main file for building your accessible form
- instructor_guide.md – Optional teaching notes and discussion prompts
Exercise Overview
You will build an accessible feedback form that includes:
Text inputs (name, email)
A multi-line feedback textarea
A rating component (radio buttons or select dropdown)
At least one multimedia element:
- image (with alt text)
- video (with captions + transcript)
- audio (with transcript)
Then you will:
- Run an AI accessibility audit
- Fix all issues
- Re-run the audit to confirm improvements
- Answer reflection questions
How to Work Through the Lab
- Build the form using semantic HTML
- Add multimedia and apply proper accessibility attributes
- Run an accessibility audit using any AI or automated tool
- Manually fix violations
- Validate accessibility again
- Complete reflection questions included at the end
- Optional: test with a screen reader (NVDA, VoiceOver)
Part 1 - Build the Base Form
Create the following form structure:
Required elements:
<form>witharia-labelledbyor<h1>as a visible titleName field with
<label for="...">Email field with validation (e.g.,
type="email")Feedback textarea
Rating field (1–5) using either:
- radio buttons (with a
<fieldset>and<legend>), or - a
<select>dropdown
- radio buttons (with a
Submit button
Accessibility requirements:
- Every field must have a visible label
- Form must have a logical tab order
- Use semantic landmarks such as
<main>or<section> - Provide error messaging placeholders (even if not functional)
TODO: Build this form in
index.html.
Part 2 - Integrate Multimedia
Choose one of the following media types and add it below your form:
Option A: Image
- Add meaningful
alttext - If decorative, use
alt=""
Option B: Video
Must include:
<track kind="captions">- Text transcript (placed below video)
Option C: Audio
- Include a transcript below the audio element
TODO: Add your chosen media with all accessibility attributes.
Part 3 - Run an AI Accessibility Audit (10 minutes)
Use one of the following automated tools:
- WAVE Web Accessibility Evaluation Tool
- Chrome Lighthouse (Accessibility tab)
- Axe DevTools
- ChatGPT’s "Check Accessibility" feature
What to check:
- Missing labels
- Color contrast issues (if you added styling)
- Missing alt text
- Missing captions or transcripts
- ARIA misuse
- Missing
fieldset/legend - Heading hierarchy problems
- Keyboard focus traps
TODO: Save or copy the audit results.
Part 4 - Apply Manual Fixes (15 minutes)
Using the audit report:
Fix every accessibility error
Fix all "serious" and "moderate" warnings
Review best practices:
- Use proper heading levels
- Add accessible names where needed
- Add transcript or captions
- Ensure form fields are programmatically associated with labels
- Add ARIA only when necessary
- Ensure the form is keyboard navigable
TODO: Update your
index.htmlbased on the audit results.
Part 5 - Reaudit & Validate (5 minutes)
Re-run the AI accessibility audit.
You should aim for:
- 0 errors
- 0–2 minor warnings
If problems remain, fix them until the page passes.
Reflection Questions (Complete Before Submitting)
- What were the top three accessibility issues identified by the AI audit?
- Were any issues false positives or over-warnings? What did you learn from them?
- Which accessibility fix improved usability the most?
- What limitations did you notice in the AI audit tools?
- How would you ensure accessibility in a large-scale production system?
Tips for Success
- Avoid using unnecessary ARIA roles when HTML semantics suffice
- Test with keyboard only—no mouse
- Audit early and often
- Use headings logically (h1 → h2 → h3…)
- Keep multimedia captions and transcripts human-readable
- Accessibility is iterative—not a one-time task
Additional Resources
- W3C Web Content Accessibility Guidelines (WCAG 2.1)
- WebAIM: Web Accessibility in Mind
- MDN: Accessibility Guide
- Deque Axe DevTools Docs
- Inclusive Design Principles
- W3C ARIA Authoring Practices
What to Expect After Completing This Lab
You will have:
- A cleanly structured, accessible HTML form
- Practical experience using automated auditors
- Understanding of how AI can accelerate—but not replace—accessibility engineering
- Fixes informed by real WCAG compliance gaps
- A solid foundation for building accessible web UI at scale