Bird
Raised Fist0
HTMLmarkup~20 mins

Radio buttons and checkboxes in HTML - Practice Problems & Coding Challenges

Choose your learning style10 modes available
Challenge - 5 Problems
🎖️
Radio and Checkbox Master
Get all challenges correct to earn this badge!
Test your skills under time pressure!
🧠 Conceptual
intermediate
1:30remaining
Understanding radio button grouping
What happens when multiple radio buttons share the same name attribute in an HTML form?
AOnly one radio button in the group can be selected at a time.
BAll radio buttons can be selected independently.
CThe radio buttons become disabled automatically.
DThe radio buttons behave like checkboxes and allow multiple selections.
Attempts:
2 left
💡 Hint
Think about how radio buttons are designed to let users pick one option from many.
📝 Syntax
intermediate
1:30remaining
Correct checkbox syntax
Which option shows the correct HTML syntax for a checkbox input with label 'Subscribe'?
A<input type="checkbox" id="subscribe"> <label for="subscribe">Subscribe</label>
B<checkbox id="subscribe">Subscribe</checkbox>
C<input type="check" id="subscribe"> <label>Subscribe</label>
D<input type="checkbox" name="subscribe">Subscribe</input>
Attempts:
2 left
💡 Hint
Remember the correct input type and how labels link to inputs.
❓ rendering
advanced
2:00remaining
Visual result of grouped radio buttons
What will the user see when this HTML code is rendered in a browser?
<form>
  <input type="radio" name="color" id="red" value="red">
  <label for="red">Red</label>
  <input type="radio" name="color" id="blue" value="blue">
  <label for="blue">Blue</label>
</form>
ATwo buttons labeled 'Red' and 'Blue' that submit the form when clicked.
BTwo checkboxes labeled 'Red' and 'Blue' that can be selected independently.
CTwo radio buttons labeled 'Red' and 'Blue' where only one can be selected at a time.
DTwo text input fields labeled 'Red' and 'Blue' for typing.
Attempts:
2 left
💡 Hint
Look at the input types and the shared name attribute.
❓ accessibility
advanced
2:00remaining
Improving checkbox accessibility
Which option best improves accessibility for a checkbox input labeled 'Accept Terms'?
A<input type="checkbox" id="terms"><label>Accept Terms</label>
B<input type="checkbox" aria-labelledby="terms-label"><span id="terms-label">Accept Terms</span>
C<input type="checkbox" id="terms" aria-label="Accept Terms">
D<input type="checkbox" id="terms"><label for="terms">Accept Terms</label>
Attempts:
2 left
💡 Hint
Consider how screen readers associate labels with inputs.
❓ selector
expert
2:00remaining
CSS selector for checked checkboxes
Which CSS selector correctly styles only the checkboxes that are checked?
Ainput[type="checkbox"]:check { background-color: lightgreen; }
Binput[type="checkbox"]:checked { background-color: lightgreen; }
Cinput:checked[type="checkbox"] { background-color: lightgreen; }
Dinput[type="checkbox" checked] { background-color: lightgreen; }
Attempts:
2 left
💡 Hint
Look for the correct pseudo-class syntax for checked inputs.

Practice

(1/5)
1. Which input type allows a user to select only one option from a group?
<input type="?">
easy
A. button
B. checkbox
C. radio
D. text

Solution

  1. Step 1: Understand input types

    The radio input type is designed for selecting one option from many.
  2. Step 2: Compare with other types

    checkbox allows multiple selections, text is for typing, and button triggers actions.
  3. Final Answer:

    radio -> Option C
  4. Quick Check:

    Single choice = radio [OK]
Hint: Radio = one choice, Checkbox = many choices [OK]
Common Mistakes:
  • Confusing checkbox with radio
  • Thinking text input allows selection
  • Using button for selection
2. Which of the following is the correct syntax to create a checkbox with label "Subscribe"?
easy
A. Subscribe
B. Subscribe
C. Subscribe
D. Subscribe

Solution

  1. Step 1: Check input and label usage

    The correct checkbox uses <input type="checkbox"> and a <label> with matching for attribute.
  2. Step 2: Identify invalid syntax

    The other options use invalid syntax: A uses a non-existent <checkbox> tag, B incorrectly closes the input with text inside, and D uses an invalid checkbox attribute.
  3. Final Answer:

    <input type="checkbox" id="sub"><label for="sub">Subscribe</label> -> Option B
  4. Quick Check:

    Checkbox + label with for = correct syntax [OK]
Hint: Use with [OK]
Common Mistakes:
  • Using non-existent <checkbox> tag
  • Missing type attribute
  • Not linking label with for attribute
3. What will be the result when this HTML is rendered?
<form>
  <input type="radio" name="color" id="red" value="Red"><label for="red">Red</label>
  <input type="radio" name="color" id="blue" value="Blue" checked><label for="blue">Blue</label>
  <input type="radio" name="color" id="green" value="Green"><label for="green">Green</label>
</form>
medium
A. Only the Blue radio button is selected by default
B. All three radio buttons are selected
C. No radio buttons are selected by default
D. The Green radio button is selected by default

Solution

  1. Step 1: Identify checked attribute

    The Blue radio button has the checked attribute, so it is selected by default.
  2. Step 2: Understand radio group behavior

    Only one radio button in a group (same name) can be selected at a time.
  3. Final Answer:

    Only the Blue radio button is selected by default -> Option A
  4. Quick Check:

    Checked attribute sets default selection [OK]
Hint: Look for checked attribute to find default selected radio [OK]
Common Mistakes:
  • Assuming multiple radios can be selected
  • Ignoring the checked attribute
  • Confusing radio with checkbox behavior
4. This code snippet is intended to create two checkboxes with labels, but only one label works correctly. What is the error?
<input type="checkbox" id="news"><label for="news">News</label>
<input type="checkbox" id="updates"><label>Updates</label>
medium
A. The second label is missing the for attribute linking it to the checkbox
B. The first checkbox is missing a name attribute
C. Checkboxes cannot have labels
D. The id attribute should be on the label, not the input

Solution

  1. Step 1: Check label associations

    The first label uses for="news" linking it to the checkbox with id "news".
  2. Step 2: Identify missing for attribute

    The second label lacks a for attribute, so it is not linked to the checkbox with id "updates".
  3. Final Answer:

    The second label is missing the for attribute linking it to the checkbox -> Option A
  4. Quick Check:

    Label needs for attribute to link input [OK]
Hint: Labels must have for attribute matching input id [OK]
Common Mistakes:
  • Assuming name attribute is required for labels
  • Thinking labels can't be used with checkboxes
  • Placing id on label instead of input
5. You want to create a form where users can select their favorite fruits. They can pick any number of fruits, but only one fruit size (Small, Medium, Large). Which input types should you use for fruits and sizes respectively?
hard
A. Radio buttons for both fruits and sizes
B. Radio buttons for fruits, Checkboxes for sizes
C. Checkboxes for both fruits and sizes
D. Checkboxes for fruits, Radio buttons for sizes

Solution

  1. Step 1: Understand selection rules

    Users can pick multiple fruits, so checkboxes are suitable for fruits.
  2. Step 2: Single choice for size

    Only one size can be selected, so radio buttons are suitable for sizes.
  3. Final Answer:

    Checkboxes for fruits, Radio buttons for sizes -> Option D
  4. Quick Check:

    Multiple choice = checkbox, single choice = radio [OK]
Hint: Multiple selections use checkbox; single selection uses radio [OK]
Common Mistakes:
  • Using radio buttons for multiple selections
  • Using checkboxes for single selection
  • Not grouping radio buttons by name
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