Learn HTML Forms by Building a Registration Form - Step 18

Tell us what’s happening:
i was told to link the input and label elements together using the for attribute, i have tried but it still doesn’t pass. keeps saying " first label element should have a for attribute with a value of first-name ."

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 for="first-name" id="first-name" /></label>
        <label>Enter Your Last Name: <input for="last-name" id="last-name" /></label>
        <label>Enter Your Email: <input for="email" id="email"/></label>
        <label>Create a New Password: <input for="new-password" 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/114.0.1823.82

Challenge: Learn HTML Forms by Building a Registration Form - Step 18

Link to the challenge:

The problem is the location of the for attributes. They have been placed in the input. However, they belong in the label so they can match with the input id with the same value.

I suggest moving the for attributes and their values to their matching label. Leave the id in the input.
I hope this helps you. Happy coding!

1 Like

Thank you so much. I appreciate

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.