HTML HTML Forms Choosing Options Create Checkboxes

I keep getting "You need to add a <label> element with its "for" attribute set to "shipping" within the <form> element."

I keep getting this error and I do not know what I'm doing wrong.

index.html
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>HTML Forms</title>
  </head>
  <body>
    <form action="index.html" method="post">
      <h1>Shirt Order Form</h1>
      <label for="color">Shirt Color:</label>
      <select id="color" name="shirt_color">
        <option value="red">Red</option>
        <option value="yellow">Yellow</option>
        <option value="purple">Purple</option>
        <option value="blue">Blue</option>
        <option value="green">Green</option>
        <option value="orange">Orange</option>
      </select>
      <label>Shirt Size:</label>
      <input type="radio" id="small" value="small" name="shirt_size"><label for="small">Small</label><br>
      <input type="radio" id="medium" value="medium" name="shirt_size"><label for="medium">Medium</label><br>
      <input type="radio" id="large" value="large" name="shirt_size"><label for="large">Large</label><br>
            <input type="checkbox" id="shipping" value="fast_shipping"><label>Fast Shipping</label><br><label for="newsletter"></label> 
      <input type="checkbox" id="newsletter" value="subscribe"><label>Subscribe to Newsletter></label><br>


      <button type="submit">Place Order</button>
    </form>

  </body>
</html>

2 Answers

Hi Shanda,

The for attribute is used to associate a label with an input. It's value must match the id of the input. For example:

<input type="checkbox" id="newsletter">
<label for="newsletter">Subscribe to Newsletter</label>

See how both the for and id attributes have the value newsletter

If we were to write it on one line like in the challenge, it would look like:

<input type="checkbox" id="newsletter"><label for="newsletter">Subscribe to Newsletter</label><br>

In your code:

<input type="checkbox" id="shipping" value="fast_shipping"><label>Fast Shipping</label><br><label for="newsletter"></label> 
<input type="checkbox" id="newsletter" value="subscribe"><label>Subscribe to Newsletter></label><br>

You've created 3 labels, and 2 of them are missing the for attribute.

<label>Fast Shipping</label>
<label for="newsletter"></label>
<label>Subscribe to Newsletter></label>

You also have an extra > after "Subscribe to Newsletter"

Hope this helps, if you are still struggling let me know :)

Thank you!