feat(a11y): <main>-landmark en visueel-verborgen <h1> in HTML-export (#1250) #1259
No reviewers
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck!1259
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/1250-html-export-landmarks"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Wat
#1250: de HTML-export had geen documentstructuur — geen
<main>, geen document-<h1>, dus voor een schermlezer was het één platte rij<section>s zonder ingang. WCAG 2.1 SC 1.3.1 (Info en relaties) en 2.4.1 (Blokken omzeilen) op AA-niveau.Wijziging
<main>-landmark.<h1 class="ocideck-sr-only">met de decktitel vóór de eerste<section>. De titel staat al in<title>; dit is het structuur-anker dat de schermlezer bij binnenkomst aankondigt.ocideck-sr-only-CSS in de structural stylesheet._htmlText, niet_htmlAttr).docs/ACCESSIBILITY.mdbijgewerkt: landmark-structuur staat er nu; kleurcontrast en focus-order blijven nog niet gecontroleerd.Visueel verandert niets — de export opent nog direct op de eerste dia. Het optionele per-dia
aria-labeluit het voorstel bewust níet meegenomen (scope: één anker-titel + landmark, niet per-dia navigatie).Refactor
Om
build()onder de method-length-ratchet (132) te houden is het CSP-<meta>-blok met zijn verklarende commentaar extraheren naarstatic _cspMeta(nonce). Zuivere verplaatsing; de CSP zelf is ongewijzigd.Bewaker-blik
Raakt een publieke belofte (de export als toegankelijke route). De wijziging versterkt de belofte: het
.md-formaat, de opslag, de afhankelijkheden en het uitgaand verkeer veranderen niet — alleen de HTML-wrapper eromheen wordt toegankelijker. Geen nieuwe partij om te vertrouwen, geen vendor-lock-in. Geen botsing; soevereiniteit en uitwisselbaarheid blijven onaangeroord.Relatie met #1249
#1250 noemde dat dit samen met #1249 (de
lang-kwestie) bekeken moest worden. #1249 is al opgelost (htmlLang-parameter +Deck.language); deze PR gaat alleen over de documentstructuur.Testplan
make checkgroen (formaat, analyse, conventies, method-length, privacy-projectiegrens, volledige testsuite, coverage, per-file coverage)<main>rond secties met h1 ervoor; fallback opfallbackTitle; ontsnapping van&/<in de titelCloses #1250
Generated with Devin