Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

HTML HTML Forms Choosing Options Create a Select Menu

Nicole Schulte
Nicole Schulte
8,082 Points

Why isn't the code working?

"Add a label element which says "Shirt Color:" I did.. but it shows me a Bummer. I can't find the mistake?

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>

      <select id="color" name="shirt_color">

        <optgroup label="Color">Shirt Color:
        <option value="red">Red</option>
        <option value="yellow">Yellow</option>
        <option value="purple">Purple</option>
        <option value="blue">Blue</option>
        <option value="orange">Orange</option>

        </optgroup>
      </select>
    </form>

  </body>
</html>

3 Answers

Jonathan Grieve
MOD
Jonathan Grieve
Treehouse Moderator 91,252 Points

In order to do this, you need to use the label element rather than optgroup.

Each form element in a HTML form has a label and they are assigned with the for attribute which is the same as the id attribute of the target element.

<label for="color">Shirt Color</label>
Christine Hendrickson
seal-mask
.a{fill-rule:evenodd;}techdegree
Christine Hendrickson
Front End Web Development Techdegree Student 5,422 Points

Hi Nicole,

The <label> element is separate from the <select> element. You'll need to open that element, reference the "color" id and then give it the label text. You'll also want to close the <label> element, since it's not a self-closing tag.

Here's an example of how this should work:

  <label for="color">Shirt Color</label>

  <select id="color" name="shirt_color">

I hope that helps!

Happy Coding ☺