-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
Hi! This is one of the most popular Bootstrap landing page templates on GitHub (1600+ stars). Since it's used as a starting point for many projects, improving accessibility here would have a wide positive impact.
Issues Found
1. Email input has no <label> element
In dist/index.html, the signup form email input relies on a placeholder only:
<input class="form-control form-control-lg" id="emailAddress" type="email" placeholder="Email Address" ...>There is no <label> element associated with this input. Placeholders disappear on focus and are not reliably announced by all screen readers (WCAG 1.3.1, 3.3.2).
Fix: Add a visually-hidden label:
<label for="emailAddress" class="visually-hidden">Email Address</label>
<input class="form-control form-control-lg" id="emailAddress" type="email" placeholder="Email Address" ...>2. Social media links have no accessible names
Footer social links contain only Bootstrap Icons with no text:
<a href="#!"><i class="bi-facebook fs-3"></i></a>
<a href="#!"><i class="bi-twitter fs-3"></i></a>
<a href="#!"><i class="bi-instagram fs-3"></i></a>Screen readers announce these as empty links (WCAG 2.4.4, 1.1.1).
Fix: Add accessible names:
<a href="#!" aria-label="Facebook"><i class="bi-facebook fs-3"></i></a>
<a href="#!" aria-label="Twitter"><i class="bi-twitter fs-3"></i></a>
<a href="#!" aria-label="Instagram"><i class="bi-instagram fs-3"></i></a>3. Heading hierarchy skips from h1 to h3
The page goes from <h1> (masthead) directly to <h3> (feature icons section), skipping <h2>. Screen readers use heading levels to build a document outline (WCAG 1.3.1).
Fix: Use <h2> for feature headings.
4. Feature icons lack ARIA hiding
The Bootstrap Icons (<i class="bi-window">, etc.) are decorative since the heading text provides the meaning. They should have aria-hidden="true" to prevent screen readers from attempting to announce them.
5. No skip navigation link
There is no skip-to-content mechanism for keyboard users (WCAG 2.4.1).
WCAG References
- 1.1.1 Non-text Content
- 1.3.1 Info and Relationships
- 2.4.1 Bypass Blocks
- 2.4.4 Link Purpose
- 3.3.2 Labels or Instructions
For a quick automated accessibility scan:
npx accessscore [your-demo-url]
Or visit https://accessscore.autonomous-claude.com
Happy to submit a PR with these fixes!