---
id: 62ff919a7b5612c0670923a5
title: Step 35
challengeType: 0
dashedName: step-35
---

# --description--

Link the applicable form elements and their `label` elements together.

Use `profile-picture`, `age`, `referrer`, and `bio` as values for the respective `id` attributes.

# --hints--

The first `input` element should have an `id` of `profile-picture`.

```js
assert.isTrue(document.querySelectorAll('fieldset:nth-of-type(3) input')?.[0]?.matches('#profile-picture'))
```

The second `input` element should have an `id` of `age`.

```js
assert.isTrue(document.querySelectorAll('fieldset:nth-of-type(3) input')?.[1]?.matches('#age'))
```

The `select` element should have an `id` of `referrer`.

```js
assert.isTrue(document.querySelector('fieldset:nth-of-type(3) select')?.matches('#referrer'))
```

The `textarea` element should have an `id` of `bio`.

```js
assert.isTrue(document.querySelector('fieldset:nth-of-type(3) textarea')?.matches('#bio'))
```

The first `label` element should have a `for` attribute with a value of `profile-picture`.

```js
assert.isTrue(document.querySelectorAll('fieldset:nth-of-type(3) label')?.[0]?.matches('label[for="profile-picture"]'))
```

The second `label` element should have a `for` attribute with a value of `age`.

```js
assert.isTrue(document.querySelectorAll('fieldset:nth-of-type(3) label')?.[1]?.matches('label[for="age"]'))
```

The third `label` element should have a `for` attribute with a value of `referrer`.

```js
assert.isTrue(document.querySelectorAll('fieldset:nth-of-type(3) label')?.[2]?.matches('label[for="referrer"]'))
```

The fourth `label` element should have a `for` attribute with a value of `bio`.

```js
assert.isTrue(document.querySelectorAll('fieldset:nth-of-type(3) label')?.[3]?.matches('label[for="bio"]'))
```

# --seed--

## --seed-contents--

```html
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Registration Form</title>
  <link rel="stylesheet" href="styles.css" />
</head>
<body>
  <h1>Registration Form</h1>
  <p>Please fill out this form with the required information</p>
  <form method="post" action='https://register-demo.freecodecamp.org'>
    <fieldset>
      <label for="first-name">Enter Your First Name: <input id="first-name" type="text" required /></label>
      <label for="last-name">Enter Your Last Name: <input id="last-name" type="text" required /></label>
      <label for="email">Enter Your Email: <input id="email" type="email" required /></label>
      <label for="new-password">Create a New Password: <input id="new-password" type="password" pattern="[a-z0-5]{8,}" required /></label>
    </fieldset>
    <fieldset>
      <legend>Account type (required)</legend>
      <label for="personal-account"><input id="personal-account" type="radio" name="account-type" value="personal" checked /> Personal</label>
      <label for="business-account"><input id="business-account" type="radio" name="account-type" value="business" /> Business</label>
    </fieldset>
    <fieldset>
--fcc-editable-region--
      <label>Upload a profile picture: <input type="file" /></label>
      <label>Input your age (years): <input type="number" min="13" max="120" /></label>
      <label>How did you hear about us?
        <select>
          <option value="">(select one)</option>
          <option value="1">freeCodeCamp News</option>
          <option value="2">freeCodeCamp YouTube Channel</option>
          <option value="3">freeCodeCamp Forum</option>
          <option value="4">Other</option>
        </select>
      </label>
      <label>Provide a bio:
        <textarea></textarea>
      </label>
--fcc-editable-region--
    </fieldset>
    <a href="https://www.freecodecamp.org/news/terms-of-service">Read our terms and conditions</a>
    <label for="terms-and-conditions">
      <input name="terms" id="terms-and-conditions" type="checkbox" required />
      I accept the terms and conditions
    </label>
    <input type="submit" value="Submit" />
  </form>
</body>
</html>
```

```css
body {
  width: 100%;
  height: 100vh;
  margin: 0;
  background-color: #1b1b32;
  color: #f5f6f7;
}

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

```
