Learn HTML Forms by Building a Registration Form - Step 18

Hi, please can anyone help? I don’t see what I am getting wrong here.

Your code so far

<!-- file: index.html -->
<!DOCTYPE html>
<html lang="en">
    <meta charset="UTF-8">
    <title>Registration Form</title>
    <link rel="stylesheet" href="styles.css" />
    <h1>Registration Form</h1>
    <p>Please fill out this form with the required information</p>
    <form method="post" action='https://register-demo.freecodecamp.org'>

<!-- User Editable Region -->

      <label>Enter Your First Name:<input id="first-name"/></label>
      <label>Enter Your Last Name: <input id="last-name"/></label>
      <label>Enter Your Email: <input id="email"/></label>
    <label>Create a New Password: <input id="new-password"/></label>

<!-- User Editable Region -->

/* file: styles.css */
body {
  width: 100%;
  height: 100vh;
  margin: 0;
  background-color: #1b1b32;
  color: #f5f6f7;

label {
  display: block;
  margin: 0.5rem 0;

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/ Safari/537.36 Edg/

Challenge Information:

Learn HTML Forms by Building a Registration Form - Step 18

What does the error message say? Where did you get stuck fixing that error?

The first label element should have a for attribute with a value of first-name .

level 18

Where did you get stuck fixing that error?

Did you try adding a for attribute to the first label element?

I did but it still sent an error message. Let me still try again.

I don’t see a for attribute here. Can you post your code with the for attributes?

  <label>Enter Your Last Name: <input id="last-name" for="last-name"/></label>

Is still saying the same thing.

This is not a label element though

I thought it says between the label and input element

That’s not what the error message says.

Step 18

Following accessibility best practices, link the input elements and the label elements together using the for attribute.

Use first-name, last-name, email, and new-password as values for the respective id attributes.

Yes, I can read the instructions. Did you read the error message I quoted? Its telling you that the for attribute goes in the label and not the input.


1 Like