Bird
Raised Fist0
HTMLmarkup~20 mins

Why accessibility matters in HTML - Challenge Your Understanding

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Accessibility Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
2:00remaining
Why use semantic HTML for accessibility?
Which of the following best explains why semantic HTML elements improve accessibility?
AThey provide meaning to content, helping screen readers understand the page structure.
BThey make the page load faster by reducing file size.
CThey allow the use of more colors and fonts on the page.
DThey automatically translate the page into multiple languages.
Attempts:
2 left
💡 Hint
Think about how screen readers interpret web pages.
📝 Syntax
intermediate
2:00remaining
Identify the correct ARIA attribute usage
Which option correctly uses an ARIA attribute to label a navigation landmark for screen readers?
HTML
<nav aria-label="Main navigation">
  <ul>
    <li><a href="#home">Home</a></li>
    <li><a href="#about">About</a></li>
  </ul>
</nav>
A<nav aria-role="navigation">...</nav>
B<nav aria-labelledby="Main navigation">...</nav>
C<nav aria-label="Main navigation">...</nav>
D<nav role="aria-label">...</nav>
Attempts:
2 left
💡 Hint
ARIA labels describe landmarks with a clear text string.
❓ rendering
advanced
2:00remaining
What is the visual result of this accessible button?
Given the code below, what will the user see in the browser?
HTML
<button aria-pressed="true" style="font-size:1.2rem; padding:0.5rem 1rem;">
  <strong>Toggle</strong> Mode
</button>
AA button with bold text 'Toggle' followed by normal text 'Mode', sized slightly larger than default.
BA plain text 'Toggle Mode' with no bold or size changes.
CA button with italic text 'Toggle Mode' and default size.
DAn invisible button because aria-pressed hides it.
Attempts:
2 left
💡 Hint
Look at the HTML tags and CSS styles applied.
❓ selector
advanced
2:00remaining
Which CSS selector targets only focused links for keyboard users?
To improve accessibility, which CSS selector applies styles only when a user navigates links using the keyboard (focus state)?
Aa:active { outline: 2px solid blue; }
Ba:focus { outline: 2px solid blue; }
Ca:hover { outline: 2px solid blue; }
Da:visited { outline: 2px solid blue; }
Attempts:
2 left
💡 Hint
Focus styles help keyboard users see where they are on the page.
❓ layout
expert
3:00remaining
How does Flexbox improve accessibility in responsive design?
Which statement best describes how using Flexbox helps accessibility on different screen sizes?
AFlexbox forces all content into a single column regardless of screen size.
BFlexbox hides content automatically on small screens to reduce clutter.
CFlexbox disables keyboard navigation to simplify layouts.
DFlexbox allows content to reorder and resize smoothly, making it easier for all users to read on any device.
Attempts:
2 left
💡 Hint
Think about how flexible layouts adapt to screen changes.

Practice

(1/5)
1. Why is accessibility important for websites?
easy
A. It reduces the website's file size significantly.
B. It makes the website load faster on all devices.
C. It allows websites to use more colors and fonts.
D. It helps people with disabilities use the website easily.

Solution

  1. Step 1: Understand the meaning of accessibility

    Accessibility means making websites usable by everyone, including people with disabilities.
  2. Step 2: Identify the main benefit of accessibility

    Helping people with disabilities use the website easily is the core reason for accessibility.
  3. Final Answer:

    It helps people with disabilities use the website easily. -> Option D
  4. Quick Check:

    Accessibility = Helping all users [OK]
Hint: Accessibility means helping everyone use the site [OK]
Common Mistakes:
  • Confusing accessibility with website speed
  • Thinking accessibility is about design colors only
  • Believing accessibility reduces file size
2. Which HTML element helps improve accessibility by giving meaning to text?
easy
A. <strong>
B. <span>
C.
D. <div>

Solution

  1. Step 1: Identify semantic HTML elements

    Elements like <strong> give meaning to text, indicating importance or emphasis.
  2. Step 2: Compare with non-semantic elements

    <div> and <span> are generic containers without meaning; <br> is for line breaks only.
  3. Final Answer:

    <strong> -> Option A
  4. Quick Check:

    Semantic tags improve meaning = <strong> [OK]
Hint: Semantic tags add meaning, not just style [OK]
Common Mistakes:
  • Using <div> or <span> for meaning
  • Confusing
    with semantic tags
  • Ignoring importance of semantic HTML
3. What will screen readers announce for this HTML snippet?
<button aria-label="Close menu"></button>
medium
A. Announces 'Close menu' because of aria-label
B. Announces 'button' only
C. No text announced because button is empty
D. Announces 'menu' only

Solution

  1. Step 1: Understand aria-label usage

    The aria-label attribute provides a text label for assistive technologies when visible text is missing.
  2. Step 2: Predict screen reader behavior

    Since the button has no visible text but has aria-label="Close menu", screen readers announce 'Close menu'.
  3. Final Answer:

    Announces 'Close menu' because of aria-label -> Option A
  4. Quick Check:

    aria-label text is read aloud [OK]
Hint: aria-label gives hidden text for screen readers [OK]
Common Mistakes:
  • Assuming empty button has no announcement
  • Thinking aria-label is ignored
  • Confusing aria-label with visible text
4. Identify the accessibility issue in this code:
<img src="logo.png">
medium
A. Image tag should be closed with </img>
B. Image source file is incorrect
C. Missing alt attribute for image description
D. Image size is too large

Solution

  1. Step 1: Check for alt attribute in img tag

    Images must have alt text to describe them for screen readers and accessibility.
  2. Step 2: Identify missing alt attribute

    The img tag lacks alt="...", so screen readers get no description.
  3. Final Answer:

    Missing alt attribute for image description -> Option C
  4. Quick Check:

    Images need alt text [OK]
Hint: Always add alt text to images [OK]
Common Mistakes:
  • Thinking <img> needs closing tag
  • Ignoring alt attribute importance
  • Assuming file path errors are accessibility issues
5. You want to make a navigation menu accessible. Which combination is best?
<nav>
  <ul>
    <li><a href="#home">Home</a></li>
    <li><a href="#about">About</a></li>
  </ul>
</nav>
hard
A. Add role="button" to <nav> and remove <ul> list
B. Add aria-label="Main menu" to <nav> and ensure links have clear text
C. Use only <div> tags with onclick handlers for links
D. Add tabindex="-1" to all links to skip them

Solution

  1. Step 1: Use semantic <nav> and list structure

    The code uses <nav> and <ul> with <li> and <a>, which is correct semantic structure for navigation.
  2. Step 2: Improve accessibility with aria-label and clear link text

    Adding aria-label="Main menu" to <nav> helps screen readers identify the menu. Clear link text ensures users understand each link.
  3. Final Answer:

    Add aria-label="Main menu" to <nav> and ensure links have clear text -> Option B
  4. Quick Check:

    Semantic nav + aria-label = accessible menu [OK]
Hint: Use semantic nav + aria-label for menus [OK]
Common Mistakes:
  • Misusing role="button" on nav
  • Replacing semantic tags with divs
  • Removing links from keyboard navigation
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard