Sjekkboksene i sjekklisten mangler tilgjengelig navn (WCAG 4.1.2)
- Dominant language
- No language data
- Stars
- 5
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
## Problem
På sjekklistesiden (steg 3 på forsiden, «Bruk din egen sjekkliste», `#/instance/{id}/checklist`) mangler alle de 16 sjekkboksene for å markere et punkt som ferdig et tilgjengelig navn. De har verken ``, `aria-label` eller `aria-labelledby`:
```html
```
Skjermleserbrukere får dermed bare «avmerkingsboks, ikke avmerket» og ingen informasjon om hvilket punkt de markerer. Punktets tittel ligger i `u-summary`-elementet i samme `
## Konsekvens
Bryter WCAG 2.1 nivå A, suksesskriterium 4.1.2 Navn, rolle, verdi.
axe-core rapporterer regelen `label` med impact `critical` og 16 noder — én per punkt i sjekklisten (Andre forhold, Personalia, Dødsboet, Arvinger, Ektepakt, Testament, Skatt, Eiendom, Kjøretøy, Bank, Forsikring, Innbo og løsøre, Næringsvirksomhet, Digitale verdier, Verdier i utlandet, Proklama).
## Hvordan reprodusere
1. Logg inn i Digitalt dødsbo som arving (tt02).
2. Velg «3. Bruk din egen sjekkliste» på forsiden.
3. Kjør en axe-scan av siden, eller inspiser en av sjekkboksene.
Regelen slår ut både når punktene er utvidet (slik siden laster) og når de er kollapset.
## Forslag til løsning
Knytt sjekkboksen til tittelen på punktet, for eksempel med `aria-labelledby` mot overskriften i punktet, eller et `aria-label` i stil med «Marker Personalia som ferdig».
## Testdekning
Feilen er dokumentert i [Altinn/dd-e2e-test](https://github.com/Altinn/dd-e2e-test), i `tests/axe.spec.ts`:
- Testen «checklist page › the checkbox for marking a point as done should have an accessible name» kjører axe-regelen `label` alene og er markert med `test.fail()`. Fjern `test.fail()` når feilen er rettet — da feiler testen hvis den begynner å passere, slik at markeringen blir ryddet bort.
- Den sidedekkende axe-scanen for sjekklistesiden kjører med `label` deaktivert inntil feilen er rettet, slik at resten av siden fortsatt dekkes.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start at the checklist route, `#/instance/{id}/checklist`, and inspect how its 16 checkboxes relate to each point title. Use `tests/axe.spec.ts` in Altinn/dd-e2e-test to reproduce the `label` violations and verify that the checkboxes have accessible names; remove the test's `test.fail()` and restore the page-wide axe coverage when the scan passes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- html
- Domain
- accessibility, frontend
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 72/100