1{ 2 "lang": "da", 3 "rules": { 4 "accesskeys": { 5 "description": "", 6 "help": "Værdien for attributten 'accesskey' skal være unik" 7 }, 8 "area-alt": { 9 "description": "", 10 "help": "Aktive <area> elementer skal have alternativ tekst" 11 }, 12 "aria-allowed-attr": { 13 "description": "", 14 "help": "Elementer må kun bruge tilladte ARIA-attributter" 15 }, 16 "aria-allowed-role": { 17 "description": "", 18 "help": "ARIA-attributten 'role' skal være passende for elementet" 19 }, 20 "aria-hidden-body": { 21 "description": "", 22 "help": "aria-hidden='true' må ikke bruges på dokumentets <body> element" 23 }, 24 "aria-hidden-focus": { 25 "description": "", 26 "help": "Elementer med ARIA-'hidden' må ikke indeholde fokuserbare elementer" 27 }, 28 "aria-input-field-name": { 29 "description": "", 30 "help": "ARIA-input-felter skal have et tilgængeligt navn" 31 }, 32 "aria-required-attr": { 33 "description": "", 34 "help": "Krævede ARIA-attributter skal være angivet" 35 }, 36 "aria-required-children": { 37 "description": "", 38 "help": "Bestemte ARIA-roller skal indeholde specifikke under-elementer" 39 }, 40 "aria-required-parent": { 41 "description": "", 42 "help": "Bestemte ARIA-roller skal være under-element til specifikke over-elementer" 43 }, 44 "aria-roledescription": { 45 "description": "", 46 "help": "Brug 'aria-roledescription' på elementer med en semantisk rolle" 47 }, 48 "aria-roles": { 49 "description": "", 50 "help": "ARIA-roller skal have en korrekt værdi" 51 }, 52 "aria-toggle-field-name": { 53 "description": "", 54 "help": "ARIA afkrydsningsfelter skal have et tilgængeligt navn" 55 }, 56 "aria-valid-attr-value": { 57 "description": "", 58 "help": "ARIA-attributter skal have en korrekt værdi" 59 }, 60 "aria-valid-attr": { 61 "description": "", 62 "help": "ARIA-attributter skal have et korrekt navn" 63 }, 64 "audio-caption": { 65 "description": "", 66 "help": "<audio> elementer skal have en transskription ('captions track')" 67 }, 68 "autocomplete-valid": { 69 "description": "", 70 "help": "Attributten 'autocomplete' skal benyttes korrekt" 71 }, 72 "avoid-inline-spacing": { 73 "description": "", 74 "help": "Inline tekst-afstande skal være justerbare med brugerdefinerede stylesheets" 75 }, 76 "blink": { 77 "description": "", 78 "help": "Elementet <blink> er udfaset og må ikke bruges" 79 }, 80 "button-name": { 81 "description": "", 82 "help": "Knapper skal have forståelig (dvs. detekterbar) tekst" 83 }, 84 "bypass": { 85 "description": "", 86 "help": "Sider skal have en metode til at springe over gentaget indhold" 87 }, 88 "color-contrast": { 89 "description": "", 90 "help": "Elementer skal have tilstrækkelig farvekontrast" 91 }, 92 "css-orientation-lock": { 93 "description": "", 94 "help": "'CSS Media queries' bør ikke bruges til at låse skærmretningen ('orientation')" 95 }, 96 "definition-list": { 97 "description": "", 98 "help": "<dl> elementer må kun direkte indeholde velsorterede <dt> og <dd> grupper, <script> eller <template> elementer" 99 }, 100 "dlitem": { 101 "description": "", 102 "help": "<dt> og <dd> elementer skal være under-element til et <dl> element" 103 }, 104 "document-title": { 105 "description": "", 106 "help": "Dokumenter skal have et <title> element for at bidrage til nemmere navigation" 107 }, 108 "duplicate-id-active": { 109 "description": "", 110 "help": "'id'-attributten for aktive elementer skal være unik" 111 }, 112 "duplicate-id-aria": { 113 "description": "", 114 "help": "'id'-attributten brugt på ARIA-elementer og -labels skal være unik" 115 }, 116 "duplicate-id": { 117 "description": "", 118 "help": "Værdien for 'id'-attributen skal være unik" 119 }, 120 "empty-heading": { 121 "description": "", 122 "help": "Overskrifter må ikke være tomme" 123 }, 124 "focus-order-semantics": { 125 "description": "", 126 "help": "Elementer i fokus-rækkefølgen bør have en 'role'-attribut, som er passende for det interaktive indhold" 127 }, 128 "form-field-multiple-labels": { 129 "description": "", 130 "help": "Form-feltet bør ikke have flere label-elementer" 131 }, 132 "frame-tested": { 133 "description": "", 134 "help": "Frame-elementer skal være testet med axe-core" 135 }, 136 "frame-title-unique": { 137 "description": "", 138 "help": "Frame-elementer skal have en unik 'title'-attribut" 139 }, 140 "frame-title": { 141 "description": "", 142 "help": "Frame-elementer skal have 'title'-attribut" 143 }, 144 "heading-order": { 145 "description": "", 146 "help": "Overskriftsniveauer bør kun ændres sekventielt" 147 }, 148 "hidden-content": { 149 "description": "", 150 "help": "Skjult indhold på siden kan ikke analyseres" 151 }, 152 "html-has-lang": { 153 "description": "", 154 "help": "<html> elementet skal have en 'lang'-attribut" 155 }, 156 "html-lang-valid": { 157 "description": "", 158 "help": "<html> elementet skal have en korrekt værdi for 'lang'-attributten" 159 }, 160 "html-xml-lang-mismatch": { 161 "description": "", 162 "help": "<html> elementer med 'lang' og 'xml:lang' skal have det samme basesprog" 163 }, 164 "image-alt": { 165 "description": "", 166 "help": "Billeder skal have en alternativ tekst" 167 }, 168 "image-redundant-alt": { 169 "description": "", 170 "help": "Alternativ tekst til billeder (alt-tekst) bør ikke gentages som brødtekst" 171 }, 172 "input-button-name": { 173 "description": "", 174 "help": "Input-knapper skal have en forståelig tekst" 175 }, 176 "input-image-alt": { 177 "description": "", 178 "help": "Billed-knapper skal have en alternativ tekst" 179 }, 180 "label-content-name-mismatch": { 181 "description": "", 182 "help": "Elementers synlige tekst skal være del af deres tilgængelige navn" 183 }, 184 "label-title-only": { 185 "description": "", 186 "help": "Form-elementer bør have en synlig label" 187 }, 188 "label": { 189 "description": "", 190 "help": "Form-elementer skal have labels" 191 }, 192 "landmark-banner-is-top-level": { 193 "description": "", 194 "help": "Et 'banner'-landmark må ikke være indeholdt i et andet landmark" 195 }, 196 "landmark-complementary-is-top-level": { 197 "description": "", 198 "help": "Et 'aside'- eller 'complimentary'-landmark må ikke være indeholdt i et andet landmark" 199 }, 200 "landmark-contentinfo-is-top-level": { 201 "description": "", 202 "help": "Et 'contentinfo'-landmark må ikke være indeholdt i et andet landmark" 203 }, 204 "landmark-main-is-top-level": { 205 "description": "", 206 "help": "Et 'main'-landmark må ikke være indeholdt i et andet landmark" 207 }, 208 "landmark-no-duplicate-banner": { 209 "description": "", 210 "help": "Dokumentet må ikke have mere end ét 'banner'-landmark" 211 }, 212 "landmark-no-duplicate-contentinfo": { 213 "description": "", 214 "help": "Dokumentet må ikke have mere end ét 'contentinfo'-landmark" 215 }, 216 "landmark-one-main": { 217 "description": "", 218 "help": "Dokumentet skal have ét 'main'-landmark" 219 }, 220 "landmark-unique": { 221 "description": "", 222 "help": "Sikrer at landmarks er unikke" 223 }, 224 "link-in-text-block": { 225 "description": "", 226 "help": "Links skal være fremtrædende fra den omkringliggende tekst på en måde, som ikke afhænger af farve" 227 }, 228 "link-name": { 229 "description": "", 230 "help": "Links skal have forståelig (detekterbar) tekst" 231 }, 232 "list": { 233 "description": "", 234 "help": "<ul> og <ol> må kun direkte indeholde <li>, <script> eller <template> elementer" 235 }, 236 "listitem": { 237 "description": "", 238 "help": "<li> elementer skal være indeholdt i et <ul> eller <ol> element" 239 }, 240 "marquee": { 241 "description": "", 242 "help": "<marquee> elementer er udfaset og må ikke bruges" 243 }, 244 "meta-refresh": { 245 "description": "", 246 "help": "Tidsindstillet 'refresh' må ikke bruges" 247 }, 248 "meta-viewport-large": { 249 "description": "", 250 "help": "Brugere bør kunne zoome og skalere tekst op til 500%" 251 }, 252 "meta-viewport": { 253 "description": "", 254 "help": "Zoom og skalering må ikke være slået fra" 255 }, 256 "object-alt": { 257 "description": "", 258 "help": "<object> elementer skal have en alternativ tekst" 259 }, 260 "p-as-heading": { 261 "description": "", 262 "help": "Fremhævelse med fed, kursiv og skriftstørrelse (font-size) må ikke bruges til at style <p> elementer som en overskrift" 263 }, 264 "page-has-heading-one": { 265 "description": "", 266 "help": "Siden skal indeholde en overskrift på øverste niveau" 267 }, 268 "region": { 269 "description": "", 270 "help": "Alt indhold på siden skal være indeholdt i landmarks" 271 }, 272 "role-img-alt": { 273 "description": "", 274 "help": "Elementer med 'role' attributværdien 'img' skal have en alternativ tekst" 275 }, 276 "scope-attr-valid": { 277 "description": "", 278 "help": "'scope'-attributten skal bruges korrekt i tabeller" 279 }, 280 "scrollable-region-focusable": { 281 "description": "", 282 "help": "Sørg for, at en scrollbar region er tilgængeligt via keyboard" 283 }, 284 "server-side-image-map": { 285 "description": "", 286 "help": "Såkaldte 'server-side image-maps' må ikke bruges" 287 }, 288 "skip-link": { 289 "description": "", 290 "help": "Et 'skip-link' skal pege på et eksisterende og fokuserbart element" 291 }, 292 "tabindex": { 293 "description": "", 294 "help": "Elementer bør ikke have et 'tabindex' højere end 0" 295 }, 296 "table-duplicate-name": { 297 "description": "", 298 "help": "Elementet <caption> bør ikke indeholde samme tekst som 'summary'-attributten" 299 }, 300 "table-fake-caption": { 301 "description": "", 302 "help": "Data- eller overskrifts-celler bør ikke bruges til at beskrive indholdet af en data-tabel" 303 }, 304 "td-has-header": { 305 "description": "", 306 "help": "Alle ikke-tomme <td> elementer i en tabel større end 3x3 bør have en tabeloverskrift (<th>)" 307 }, 308 "td-headers-attr": { 309 "description": "", 310 "help": "Alle celler i en tabel, som bruger 'header'-attributten må kun referere til andre celler i samme tabel" 311 }, 312 "th-has-data-cells": { 313 "description": "", 314 "help": "Alle <th> elementer og elementer med 'role=columnheader/rowheader' skal referere til de data-celler, som de beskriver" 315 }, 316 "valid-lang": { 317 "description": "", 318 "help": "'lang'-attributten skal have en korrekt værdi" 319 }, 320 "video-caption": { 321 "description": "", 322 "help": "<video> elementer skal have undertekster ('captions')" 323 } 324 }, 325 "checks": { 326 "abstractrole": { 327 "pass": "Abstrakte roller er ikke brugt", 328 "fail": "Abstrakte roller bør ikke bruges" 329 }, 330 "aria-allowed-attr": { 331 "pass": "ARIA-attribut er brugt korrekt for den angivede rolle", 332 "fail": { 333 "singular": "ARIA-attributterne er ikke tilladt: ${data.values}", 334 "plural": "ARIA-attribut er ikke tilladt: ${data.values}" 335 } 336 }, 337 "aria-allowed-role": { 338 "pass": "ARIA-rollen er tilladt for det givne element", 339 "fail": { 340 "singular": "ARIA-rollerne ${data.values} er ikke tilladt for det givne element", 341 "plural": "ARIA-rollen ${data.values} er ikke tilladt for det givne element" 342 }, 343 "incomplete": { 344 "singular": "ARIA-rollerne ${data.values} skal være fjernet, når elementet er synligt, da de ikke er tilladt for elementet", 345 "plural": "ARIA-rollen ${data.values} skal være fjernet, når elementet er synligt, da det ikke er tilladt for elementet" 346 } 347 }, 348 "aria-hidden-body": { 349 "pass": "Ingen 'aria-hidden'-attribut er at finde i dokumentets <body> element", 350 "fail": "'aria-hidden=true' bør ikke bruges på dokumentets <body> element" 351 }, 352 "aria-roledescription": { 353 "pass": "'aria-roledescription' bruges på en understøttet semantisk rolle", 354 "incomplete": "Tjek at 'aria-roledescription' bliver læst op af understøttet skærmlæser", 355 "fail": "Giv elementet en rolle, som understøtter 'aria-roledescription'" 356 }, 357 "aria-errormessage": { 358 "pass": "Bruger en understøttet 'aria-errormessage'-teknik", 359 "fail": { 360 "singular": "'aria-errormessage'-værdier ${data.values}` bør bruge en teknik til at annoncere beskeden (fx 'aria-live', 'aria-describedby', 'role=alert', osv.)", 361 "plural": "'aria-errormessage'-værdi ${data.values}` bør bruge en teknik til at annoncere beskeden (fx 'aria-live', 'aria-describedby', 'role=alert', osv.)" 362 } 363 }, 364 "has-widget-role": { 365 "pass": "Elementet har en 'widget'-rolle.", 366 "fail": "Elementet har ikke en 'widget'-rolle." 367 }, 368 "invalidrole": { 369 "pass": "ARIA-rollen er korrekt", 370 "fail": "Rollen skal være en af de mulige ARIA-roller" 371 }, 372 "no-implicit-explicit-label": { 373 "pass": "Der er uoverensstemmelse mellem <label> og det tilgængelige navn", 374 "incomplete": "Tjek at <label> elementet ikke behøver være en del af ${data}-feltets navn" 375 }, 376 "aria-required-attr": { 377 "pass": "Alle krævede ARIA-attributter er tilstede", 378 "fail": { 379 "singular": "Krævet ARIA-attributter er ikke til stede: ${data.values}", 380 "plural": "Krævet ARIA-attribut er ikke til stede: ${data.values}" 381 } 382 }, 383 "aria-required-children": { 384 "pass": "Krævet ARIA-under-elementer er til stede", 385 "fail": { 386 "singular": "Krævet ARIA-under-elementers rolle er ikke til stede: ${data.values}", 387 "plural": "Krævet ARIA-under-elements rolle er ikke til stede: ${data.values}" 388 }, 389 "incomplete": { 390 "singular": "Forventer at ARIA under-elementers rolle bliver tilføjet: ${data.values}", 391 "plural": "Forventer at ARIA under-elements rolle bliver tilføjet: ${data.values}" 392 } 393 }, 394 "aria-required-parent": { 395 "pass": "Krævet ARIA-over-elements rolle er til stede", 396 "fail": { 397 "singular": "Krævet ARIA-over-elementers rolle er ikke til stede: ${data.values}", 398 "plural": "Krævet ARIA-over-elements rolle er ikke til stede: ${data.values}" 399 } 400 }, 401 "aria-unsupported-attr": { 402 "pass": "ARIA-attribut er understøttet", 403 "fail": "ARIA-attribut er ikke bredt understøttet i skærmlæsere og tilgængelighedsteknologier: ${data.values}" 404 }, 405 "unsupportedrole": { 406 "pass": "ARIA rollen er understøttet", 407 "fail": "Den brugte rolle er ikke bredt understøttet i skærmlæsere og tilgængelighedsteknologier: ${data.values}" 408 }, 409 "aria-valid-attr-value": { 410 "pass": "ARIA-attributværdien er valid", 411 "fail": { 412 "singular": "Ikke-korrekt ARIA-attributværdier: ${data.values}", 413 "plural": "Ikke-korrekt ARIA-attributværdi: ${data.values}" 414 }, 415 "incomplete": { 416 "singular": "ARIA-attributternes element 'id' er ikke at finde på siden: ${data.values}", 417 "plural": "ARIA-attributtens element 'id' er ikke at finde på siden: ${data.values}" 418 } 419 }, 420 "aria-valid-attr": { 421 "pass": { 422 "singular": "ARIA-attributnavnene er korrekt", 423 "plural": "ARIA-attributnavnet er korrekt" 424 }, 425 "fail": { 426 "singular": "Ikke-korrekt ARIA-attributnavne: ${data.values}", 427 "plural": "Ikke-korrekt ARIA-attributnavn: ${data.values}" 428 } 429 }, 430 "valid-scrollable-semantics": { 431 "pass": "Elementet har korrekt semantik for et element i fokus-rækkefølgen.", 432 "fail": "Elementet har ikke korrekt semantik for et element i fokus-rækkefølgen." 433 }, 434 "color-contrast": { 435 "pass": "Elementet har stor farvekontrast, den er ${data.contrastRatio}", 436 "fail": "Elementet har ikke nok farvekontrast, den er ${data.contrastRatio} (forgrundsfarve: ${data.fgColor}, baggrundsfarve: ${data.bgColor}, tekststørrelse: ${data.fontSize}, teksttykkelse: ${data.fontWeight}). Forventet kontrastforhold er ${data.expectedContrastRatio}", 437 "incomplete": { 438 "bgImage": "Elementets baggrundsfarve kunne ikke detekteres på grund af et baggrundsbillede", 439 "bgGradient": "Elementets baggrundsfarve kunne ikke detekteres på grund af en baggrundsgradient", 440 "imgNode": "Elementets baggrundsfarve kunne ikke detekteres, fordi elementet indeholder et billedelement", 441 "bgOverlap": "Elementets baggrundsfarve kunne ikke detekteres, fordi det er overlappet af et andet element", 442 "fgAlpha": "Elementets forgrundsfarve kunne ikke detekteres på grund af dets gennemsigtighed", 443 "elmPartiallyObscured": "Elementets baggrundsfarve kunne ikke detekteres, fordi det er delvist dækket af et andet element", 444 "elmPartiallyObscuring": "Elementets baggrundsfarve kunne ikke detekteres, fordi det delvist dækker et andet element", 445 "outsideViewport": "Elementets baggrundsfarve kunne ikke detekteres, fordi det er udenfor sidens 'viewport'", 446 "equalRatio": "Elementet har et 1:1-kontrastforhold med baggrunden", 447 "shortTextContent": "Elementets indhold er for kort til at kunne afgøre, om indholdet ren faktisk ER tekst", 448 "default": "Kan ikke udregne kontrastforhold" 449 } 450 }, 451 "link-in-text-block": { 452 "pass": "Links kan adskilles fra den omkringliggende tekst på anden måde end med farve", 453 "fail": "Links bør skille sig ud fra den omkringliggende tekst på anden måde end med farve", 454 "incomplete": { 455 "bgContrast": "Elementets kontrastforhold kunne ikke detekteres. Tjek for specifik 'hover'/'focus' styling", 456 "bgImage": "Elementets kontrastforhold kunne ikke detekteres på grund af et baggrundsbillede", 457 "bgGradient": "Elementets kontrastforhold kunne ikke detekteres på grund af en baggrundsgradient", 458 "imgNode": "Elementets kontrastforhold kunne ikke detekteres, fordi elementet indeholder et billedelement", 459 "bgOverlap": "Elementets kontrastforhold kunne ikke detekteres på grund af overlappende elementer", 460 "default": "Kan ikke udregne kontrastforhold" 461 } 462 }, 463 "autocomplete-appropriate": { 464 "pass": "'autocomplete'-værdien er brugt på et passende element", 465 "fail": "'autocomplete'-værdien er ikke passende for denne type input" 466 }, 467 "autocomplete-valid": { 468 "pass": "'autocomplete'-attributten er korrekt formateret", 469 "fail": "'autocomplete'-attributten er forkert formateret" 470 }, 471 "accesskeys": { 472 "pass": "'Accesskey' attributværdien er unik", 473 "fail": "Dokumentet har flere elementer med den samme 'accesskey'-attribut" 474 }, 475 "focusable-content": { 476 "pass": "Elementet indeholder fokuserbare elementer", 477 "fail": "Elementet bør have fokuserbart indhold" 478 }, 479 "focusable-disabled": { 480 "pass": "Ingen fokuserbare elementer indeholdt i elementet", 481 "fail": "Fokuserbart indhold bør slås fra eller fjernes fra sidens DOM" 482 }, 483 "focusable-element": { 484 "pass": "Elementet er fokuserbart", 485 "fail": "Elementet bør være fokuserbart" 486 }, 487 "focusable-no-name": { 488 "pass": "Elementet er ikke i sidens tabulerings-rækkefølge ('tab order') eller har tilgængelig tekst", 489 "fail": "Elementet er i sidens tabulerings-rækkefølge ('tab order') og har ikke tilgængelig tekst" 490 }, 491 "focusable-not-tabbable": { 492 "pass": "Ingen fokuserbare elementer indeholdt i element", 493 "fail": "Fokuserbart indhold bør have tabindex='-1' eller fjernes fra sidens DOM" 494 }, 495 "landmark-is-top-level": { 496 "pass": "${data.role} landmark er på det øverste niveau.", 497 "fail": "${data.role} landmark er indhold i et andet landmark." 498 }, 499 "page-has-heading-one": { 500 "pass": "Siden har mindst én overskrift på niveau 1", 501 "fail": "Siden skal have mindst én overskrift på niveau 1" 502 }, 503 "page-has-main": { 504 "pass": "Dokumentet har mindst ét 'main'-landmark", 505 "fail": "Dokumentet har ikke et 'main'-landmark" 506 }, 507 "page-no-duplicate-banner": { 508 "pass": "Dokumentet har ikke mere end ét 'banner'-landmark", 509 "fail": "Dokumentet har mere end ét 'banner-'landmark" 510 }, 511 "page-no-duplicate-contentinfo": { 512 "pass": "Dokumentet har ikke mere end ét 'contentinfo'-landmark", 513 "fail": "Dokumentet har mere end ét 'contentinfo'-landmark" 514 }, 515 "page-no-duplicate-main": { 516 "pass": "Dokumentet har ikke mere end ét 'main'-landmark", 517 "fail": "Dokumentet har mere end ét 'main'-landmark" 518 }, 519 "tabindex": { 520 "pass": "Elementet har ikke et 'tabindex' større end 0", 521 "fail": "Elementet har et 'tabindex' større end 0" 522 }, 523 "alt-space-value": { 524 "pass": "Elementet har en alt-attribut med valid værdi", 525 "fail": "Elementet har en alt-attribut, som kun indeholder et mellemrum, hvilket ikke ignoreres af alle skærmlæsere" 526 }, 527 "duplicate-img-label": { 528 "pass": "Elementet duplikerer ikke den eksisterende tekst fra <img> elementets alt-tekst", 529 "fail": "Elementet indeholder et <img> element med alt-tekst, som duplikerer den eksisterende tekst" 530 }, 531 "explicit-label": { 532 "pass": "Form-elementet har en eksplicit <label>", 533 "fail": "Form-elementet har ikke en eksplicit <label>" 534 }, 535 "help-same-as-label": { 536 "pass": "Hjælpeteksten ('title' eller 'aria-describedby') duplikerer ikke label-teksten", 537 "fail": "Hjælpeteksten ('title' eller 'aria-describedby') er den samme som label-teksten" 538 }, 539 "hidden-explicit-label": { 540 "pass": "Form-elementet har en synlig og eksplicit <label>", 541 "fail": "Form-elementet har en eksplicit <label>, som er skjult" 542 }, 543 "implicit-label": { 544 "pass": "Form-elementet har en implicit (indeholdt i en) <label>", 545 "fail": "Form-elementet har ikke en implicit (indeholdt i en) <label>" 546 }, 547 "label-content-name-mismatch": { 548 "pass": "Elementet indeholder synlig tekst som del af dets tilgængelige navn", 549 "fail": "Tekst i elementet er ikke inkluderet i det tilgængelige navn" 550 }, 551 "multiple-label": { 552 "pass": "Form-feltet har ikke flere label-elementer", 553 "incomplete": "Flere label-elementer er ikke bredt understøttet i tilgængelighedsteknologier. Sørg for, at det første label-element indeholder alle de nødvendige informationer." 554 }, 555 "title-only": { 556 "pass": "Form-elementet bruger ikke udelukkende 'title'-attributten som label", 557 "fail": "Kun 'title'-attributten er brugt som label for form-elementet" 558 }, 559 "landmark-is-unique": { 560 "pass": "Landmarks skal have en unik rolle eller 'role'/'label'/'title'-attribut-kombination (som tilgængeligt navn)", 561 "fail": "Et landmark skal have en unik 'aria-label', 'aria-labelledby', eller 'title' for at gøre landmarks adskillelige" 562 }, 563 "has-lang": { 564 "pass": "<html> elementet har en 'lang'-attribut", 565 "fail": "<html> elementet har ikke en 'lang'-attribut" 566 }, 567 "valid-lang": { 568 "pass": "'lang'-attributtens værdi er inkluderet i listen over godkendte sprog", 569 "fail": "'lang'-attributtens værdi er ikke inkluderet i listen over godkendte sprog" 570 }, 571 "xml-lang-mismatch": { 572 "pass": "Attributterne 'lang' og 'xml:lang' har samme basissprog", 573 "fail": "Attributterne 'lang' og 'xml:lang' har ikke samme basissprog" 574 }, 575 "dlitem": { 576 "pass": "Beskrivelsesliste-elementet har et <dl>-over-element", 577 "fail": "Beskrivelsesliste-elementet har ikke et <dl>-over-element" 578 }, 579 "listitem": { 580 "pass": "Elementet i listen har et <ul>, <ol> eller 'role=\"list\"'-over-element", 581 "fail": "Elementet i listen har ikke et <ul>, <ol> eller 'role=\"list\"'-over-element" 582 }, 583 "only-dlitems": { 584 "pass": "Elementet i listen har kun direkte under-elementer, som er tilladt i <dt> eller <dd> elementer", 585 "fail": "Elementet i listen har direkte under-elementer, som ikke er tilladt inde i <dt> eller <dd> elementer" 586 }, 587 "only-listitems": { 588 "pass": "Elementet i listen har kun direkte under-elementer, som er tilladt i <li> elementer", 589 "fail": "Elementet i listen har direkte under-elementer, som ikke er tilladt inde i <li> elementer" 590 }, 591 "structured-dlitems": { 592 "pass": "Det ikke-tomme element har både <dt> og <dd> elementer", 593 "fail": "Det ikke-tomme element har ikke mindst ét <dt> element efterfulgt af mindst ét <dd> element" 594 }, 595 "caption": { 596 "pass": "Multimedia-elementet har et track med undertekster", 597 "incomplete": "Tjek at undertekster er tilgængelige for elementet" 598 }, 599 "frame-tested": { 600 "pass": "Denne <iframe> blev testet af axe-core", 601 "fail": "Denne <iframe> kunne ikke testes af axe-core", 602 "incomplete": "Denne <iframe> er endnu ikke blevet testet af axe-core" 603 }, 604 "css-orientation-lock": { 605 "pass": "Skærmen kan styres, og sidens skærmretning er ikke låst med med 'css-orientation-lock'", 606 "fail": "Skærmretningen ('css-orientation-lock') er låst, hvilket gør sidevisning svær at styre på skærmen", 607 "incomplete": "Det kan ikke detekteres om skærmretning er låst (med 'css-orientation-lock')" 608 }, 609 "meta-viewport-large": { 610 "pass": "<meta>-tagget begrænser ikke høj zoom på mobile enheder", 611 "fail": "<meta>-tagget begrænser zoom på mobile enheder" 612 }, 613 "meta-viewport": { 614 "pass": "<meta>-tagget slår ikke zoom fra på mobile enheder", 615 "fail": "${data} på <meta>-tagget slår zoom fra på mobile enheder" 616 }, 617 "header-present": { 618 "pass": "Siden har en overskrift (header)", 619 "fail": "Siden har ikke en overskrift (header)" 620 }, 621 "heading-order": { 622 "pass": "Rækkefølgen af overskiftsniveauer er korrekt", 623 "fail": "Rækkefølgen af overskiftsniveauer er ikke korrekt" 624 }, 625 "internal-link-present": { 626 "pass": "Passende 'skip link' fundet", 627 "fail": "Intet passende 'skip link' fundet" 628 }, 629 "landmark": { 630 "pass": "Siden har en 'landmark' region", 631 "fail": "Siden har ikke en 'landmark' region" 632 }, 633 "meta-refresh": { 634 "pass": "<meta>-tagget genindlæser ikke siden med det samme", 635 "fail": "<meta>-tagget genindlæser siden med det samme" 636 }, 637 "p-as-heading": { 638 "pass": "<p> elementer er ikke stylet som en overskrift", 639 "fail": "Overskrifts-elementer (<h1>, <h2>, osv.) bør bruges i stedet for stylet <p> elementer" 640 }, 641 "region": { 642 "pass": "Al indhold på siden er lagt ind under landmarks", 643 "fail": "Dele af sidens indhold er ikke lagt under et landmark" 644 }, 645 "skip-link": { 646 "pass": "Det element, som 'skip link' refererer til, eksisterer", 647 "incomplete": "Det element, som 'skip link' refererer til, bør blive synligt ved aktivering", 648 "fail": "Manglende 'skip link' 'target'-attribut" 649 }, 650 "unique-frame-title": { 651 "pass": "Elementets 'title'-attribut er unik", 652 "fail": "Elementets 'title'-attribut er ikke unik" 653 }, 654 "duplicate-id-active": { 655 "pass": "Dokumentet har ingen aktive elementer, der deler den samme 'id'-attribut", 656 "fail": "Dokumentet har aktive elementer, der deler den samme 'id'-attribut: ${data}" 657 }, 658 "duplicate-id-aria": { 659 "pass": "Dokumentet har ingen elementer refereret med ARIA eller labels, der deler den samme 'id'-attribut", 660 "fail": "Dokumentet har flere elementer refereret med ARIA med den samme 'id'-attribut: ${data}" 661 }, 662 "duplicate-id": { 663 "pass": "Dokumentet har ingen statiske elementer, der deler den samme 'id'-attribut", 664 "fail": "Dokumentet har flere statiske elementer med den samme 'id'-attribut" 665 }, 666 "aria-label": { 667 "pass": "'aria-label'-attribut er til stede og er ikke tom", 668 "fail": "'aria-label'-attribut eksisterer ikke eller er tom" 669 }, 670 "aria-labelledby": { 671 "pass": "'aria-labelledby'-attribut eksisterer og refererer elementer, der er synlige for skærmlæsere", 672 "fail": "'aria-labelledby'-attribut eksisterer ikke, eller refererer elementer, som ikke eksisterer - eller refererer til elementer, der er tomme" 673 }, 674 "avoid-inline-spacing": { 675 "pass": "Ingen inline styling med '!important', som påvirker tekst-mellemrums-afstand er specificeret", 676 "fail": { 677 "singular": "Fjern '!important' fra inline stylings ${data.values}, da overskrivning af dette, ikke er understøttet i de fleste browsere", 678 "plural": "Fjern '!important' fra inline styling ${data.values}, da overskrivning af dette, ikke er understøttet i de fleste browsere" 679 } 680 }, 681 "button-has-visible-text": { 682 "pass": "Elementet har indre tekst, som er synlig for skærmlæsere", 683 "fail": "Elementet har ingen indre tekst, som er synlig for skærmlæsere" 684 }, 685 "doc-has-title": { 686 "pass": "Dokumentet har et <title> element, der ikke er tomt", 687 "fail": "Dokumentet mangler et <title> element med indhold" 688 }, 689 "exists": { 690 "pass": "Elementet eksisterer ikke", 691 "fail": "Elementet eksisterer" 692 }, 693 "has-alt": { 694 "pass": "Elementet har en 'alt'-attribut", 695 "fail": "Elementet har ikke en 'alt'-attribut" 696 }, 697 "has-visible-text": { 698 "pass": "Elementet har tekst, der er synligt for skærmlæsere", 699 "fail": "Elementet har ikke tekst, der er synligt for skærmlæsere" 700 }, 701 "is-on-screen": { 702 "pass": "Elementet er ikke synligt", 703 "fail": "Elementet er synligt" 704 }, 705 "non-empty-alt": { 706 "pass": "Elementet har 'alt'-attribut med indhold", 707 "fail": "Elementet har ingen 'alt'-attribut, eller 'alt'-attributten er tom" 708 }, 709 "non-empty-if-present": { 710 "pass": { 711 "default": "Elementet har ikke en 'value'-attribut", 712 "has-label": "Elementet har en 'værdi'-attribut med indhold" 713 }, 714 "fail": "Elementet har en 'value'-attribut, og 'værdi'-attributten er tom" 715 }, 716 "non-empty-title": { 717 "pass": "Elementet har en 'title'-attribut", 718 "fail": "Elementet har ingen 'title'-attribut, eller 'title'-attributten er tom" 719 }, 720 "non-empty-value": { 721 "pass": "Elementet har 'value'-attribut med indhold", 722 "fail": "Elementet har ingen 'value'-attribut, eller 'value'-attributten er tom" 723 }, 724 "role-none": { 725 "pass": "Elementets standard semantik blev overskrevet med attributten 'role=\"none\"'", 726 "fail": "Elementets standard semantik blev ikke overskrevet med attributten 'role=\"none\"'" 727 }, 728 "role-presentation": { 729 "pass": "Elementets standard semantik blev overskrevet med attributten 'role=\"presentation\"'", 730 "fail": "Elementets standard semantik blev ikke overskrevet med attributten 'role=\"presentation\"'" 731 }, 732 "caption-faked": { 733 "pass": "Den første række i tabellen er ikke brugt som en beskrivelse ('caption')", 734 "fail": "Det første element i tabellen bør være en beskrivelse (<caption>) i stedet for en celle" 735 }, 736 "html5-scope": { 737 "pass": "'Scope'-attributten bør kun bruges på tabellens header-elementer (<th>)", 738 "fail": "'Scope'-attributten bør kun bruges på tabellens header-elementer (<th>)" 739 }, 740 "same-caption-summary": { 741 "pass": "Indholdet af 'summary'-attributten og <caption> elementet er ikke identisk", 742 "fail": "Indholdet af 'summary'-attributten og <caption> elementet er identisk" 743 }, 744 "scope-value": { 745 "pass": "'scope'-attributten bruges korrekt", 746 "fail": "Værdien af 'scope'-attributten må kun være 'row' eller 'col'" 747 }, 748 "td-has-header": { 749 "pass": "Alle data-celler med indhold har en tabel-header", 750 "fail": "Nogle data-celler med indhold har ikke tabel-headers" 751 }, 752 "td-headers-attr": { 753 "pass": "Header-attributten bruges kun til at referere til andre celler i den samme tabel", 754 "fail": "Header-attributten bruges ikke kun til at referere til andre celler i den samme tabel" 755 }, 756 "th-has-data-cells": { 757 "pass": "Alle tabellens header-celler refererer til data-celler", 758 "fail": "Ikke alle tabellens header-celler refererer til data-celler", 759 "incomplete": "Nogle af tabellens data-celler mangler eller er tomme" 760 }, 761 "hidden-content": { 762 "pass": "Alt indhold på siden er blevet analyseret.", 763 "fail": "Der var problemer med at analysere dele af indholdet på denne side.", 764 "incomplete": "Der er skjult indhold på siden, som ikke blev analyseret. Du skal gøre dette indhold synligt for at kunne analysere det." 765 } 766 }, 767 "failureSummaries": { 768 "any": { 769 "failureMessage": "Ret en af følgende:{{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}" 770 }, 771 "none": { 772 "failureMessage": "Ret alle de følgende:{{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}" 773 } 774 }, 775 "incompleteFallbackMessage": "axe kunne ikke give en årsag. Tid til at finde dit udviklingsværktøj frem!" 776} 777