--- id: 6145e6eeaa66c605eb087fe9 title: Passo 30 challengeType: 0 dashedName: step-30 --- # --description-- Embora não seja necessário para elementos `label` com um `input` aninhado, ainda é uma prática recomendada vincular explicitamente um `label` com seu elemento `input` correspondente. Vincule os elementos `label` com seus elementos `input` correspondentes. # --hints-- Você deve dar ao primeiro `label` um atributo `for` que corresponda ao `id` de seu elemento `input`. ```js const htmlFor = document.querySelectorAll('ul.answers-list > li > label')?.[0]?.htmlFor; assert.notEmpty(htmlFor); assert.equal(htmlFor, document.querySelectorAll('ul.answers-list > li > label > input')?.[0]?.id); ``` Você deve dar ao segundo `label` um atributo `for` que corresponda ao `id` de seu elemento `input`. ```js const htmlFor = document.querySelectorAll('ul.answers-list > li > label')?.[1]?.htmlFor; assert.notEmpty(htmlFor); assert.equal(htmlFor, document.querySelectorAll('ul.answers-list > li > label > input')?.[1]?.id); ``` Você deve dar ao terceiro `label` um atributo `for` que corresponda ao `id` de seu elemento `input`. ```js const htmlFor = document.querySelectorAll('ul.answers-list > li > label')?.[2]?.htmlFor; assert.notEmpty(htmlFor); assert.equal(htmlFor, document.querySelectorAll('ul.answers-list > li > label > input')?.[2]?.id); ``` Você deve dar ao `label` um atributo `for` que corresponda ao `id` de seu elemento `input`. ```js const htmlFor = document.querySelectorAll('ul.answers-list > li > label')?.[3]?.htmlFor; assert.notEmpty(htmlFor); assert.equal(htmlFor, document.querySelectorAll('ul.answers-list > li > label > input')?.[3]?.id); ``` # --seed-- ## --seed-contents-- ```html Accessibility Quiz

HTML/CSS Quiz

Student Info

HTML

1

The legend element represents a caption for the content of its parent fieldset element --fcc-editable-region--

2

A label element nesting an input element is required to have a for attribute with the same value as the input's id
--fcc-editable-region--

CSS

``` ```css body { background: #f5f6f7; color: #1b1b32; font-family: Helvetica; margin: 0; } header { width: 100%; height: 50px; background-color: #1b1b32; display: flex; } #logo { width: max(100px, 18vw); background-color: #0a0a23; aspect-ratio: 35 / 4; padding: 0.4rem; } h1 { color: #f1be32; font-size: min(5vw, 1.2em); } nav { width: 50%; max-width: 300px; height: 50px; } nav > ul { display: flex; justify-content: space-evenly; } h1, h2 { font-family: Verdana, Tahoma; } h2 { border-bottom: 4px solid #dfdfe2; } .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } ```