lighthouse 11.2.0 → 11.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/cli/cli-flags.d.ts +5 -1
  2. package/cli/cli-flags.js +5 -1
  3. package/cli/test/smokehouse/__snapshots__/report-assert-test.js.snap +2 -2
  4. package/cli/test/smokehouse/frontends/smokehouse-bin.js +18 -7
  5. package/cli/test/smokehouse/lighthouse-runners/bundle.d.ts +2 -4
  6. package/cli/test/smokehouse/lighthouse-runners/bundle.js +8 -4
  7. package/cli/test/smokehouse/lighthouse-runners/cli.d.ts +2 -4
  8. package/cli/test/smokehouse/lighthouse-runners/cli.js +5 -3
  9. package/cli/test/smokehouse/lighthouse-runners/devtools.d.ts +2 -1
  10. package/cli/test/smokehouse/lighthouse-runners/devtools.js +3 -1
  11. package/cli/test/smokehouse/smokehouse.d.ts +4 -2
  12. package/cli/test/smokehouse/smokehouse.js +10 -7
  13. package/core/audits/byte-efficiency/legacy-javascript.js +2 -2
  14. package/core/audits/image-size-responsive.js +1 -1
  15. package/core/audits/layout-shift-elements.js +1 -1
  16. package/core/audits/lcp-lazy-loaded.js +2 -2
  17. package/core/audits/long-tasks.js +1 -1
  18. package/core/audits/metrics/cumulative-layout-shift.js +2 -2
  19. package/core/audits/metrics/interaction-to-next-paint.js +2 -2
  20. package/core/audits/metrics/largest-contentful-paint.js +1 -1
  21. package/core/audits/no-unload-listeners.js +1 -1
  22. package/core/audits/preload-fonts.js +1 -1
  23. package/core/audits/prioritize-lcp-image.js +1 -1
  24. package/core/audits/unsized-images.js +1 -1
  25. package/core/audits/work-during-interaction.js +1 -1
  26. package/core/config/config.d.ts +1 -2
  27. package/core/config/config.js +18 -62
  28. package/core/config/constants.d.ts +1 -3
  29. package/core/config/constants.js +4 -18
  30. package/core/config/default-config.js +8 -8
  31. package/core/config/filters.d.ts +0 -8
  32. package/core/config/filters.js +0 -28
  33. package/core/config/validation.d.ts +4 -15
  34. package/core/config/validation.js +18 -63
  35. package/core/gather/base-artifacts.d.ts +2 -2
  36. package/core/gather/base-artifacts.js +5 -5
  37. package/core/gather/driver/navigation.d.ts +1 -1
  38. package/core/gather/driver/navigation.js +1 -1
  39. package/core/gather/driver/prepare.d.ts +3 -18
  40. package/core/gather/driver/prepare.js +21 -43
  41. package/core/gather/driver/storage.d.ts +2 -1
  42. package/core/gather/driver/storage.js +3 -12
  43. package/core/gather/gatherers/inspector-issues.js +1 -0
  44. package/core/gather/navigation-runner.d.ts +3 -31
  45. package/core/gather/navigation-runner.js +46 -113
  46. package/core/lib/navigation-error.d.ts +8 -3
  47. package/core/lib/navigation-error.js +19 -11
  48. package/dist/report/bundle.esm.js +4 -4
  49. package/dist/report/flow.js +7 -7
  50. package/dist/report/standalone.js +5 -5
  51. package/package.json +8 -8
  52. package/report/renderer/performance-category-renderer.js +2 -1
  53. package/shared/localization/locales/ar-XB.json +78 -75
  54. package/shared/localization/locales/ar.json +78 -75
  55. package/shared/localization/locales/bg.json +78 -75
  56. package/shared/localization/locales/ca.json +78 -75
  57. package/shared/localization/locales/cs.json +78 -75
  58. package/shared/localization/locales/da.json +78 -75
  59. package/shared/localization/locales/de.json +81 -78
  60. package/shared/localization/locales/el.json +84 -81
  61. package/shared/localization/locales/en-GB.json +78 -75
  62. package/shared/localization/locales/en-US.json +26 -23
  63. package/shared/localization/locales/en-XA.json +78 -75
  64. package/shared/localization/locales/en-XL.json +26 -23
  65. package/shared/localization/locales/es-419.json +78 -75
  66. package/shared/localization/locales/es.json +78 -75
  67. package/shared/localization/locales/fi.json +79 -76
  68. package/shared/localization/locales/fil.json +78 -75
  69. package/shared/localization/locales/fr.json +78 -75
  70. package/shared/localization/locales/he.json +78 -75
  71. package/shared/localization/locales/hi.json +78 -75
  72. package/shared/localization/locales/hr.json +78 -75
  73. package/shared/localization/locales/hu.json +78 -75
  74. package/shared/localization/locales/id.json +78 -75
  75. package/shared/localization/locales/it.json +79 -76
  76. package/shared/localization/locales/ja.json +78 -75
  77. package/shared/localization/locales/ko.json +78 -75
  78. package/shared/localization/locales/lt.json +78 -75
  79. package/shared/localization/locales/lv.json +78 -75
  80. package/shared/localization/locales/nl.json +78 -75
  81. package/shared/localization/locales/no.json +78 -75
  82. package/shared/localization/locales/pl.json +78 -75
  83. package/shared/localization/locales/pt-PT.json +78 -75
  84. package/shared/localization/locales/pt.json +79 -76
  85. package/shared/localization/locales/ro.json +78 -75
  86. package/shared/localization/locales/ru.json +78 -75
  87. package/shared/localization/locales/sk.json +78 -75
  88. package/shared/localization/locales/sl.json +78 -75
  89. package/shared/localization/locales/sr-Latn.json +78 -75
  90. package/shared/localization/locales/sr.json +78 -75
  91. package/shared/localization/locales/sv.json +78 -75
  92. package/shared/localization/locales/ta.json +78 -75
  93. package/shared/localization/locales/te.json +78 -75
  94. package/shared/localization/locales/th.json +78 -75
  95. package/shared/localization/locales/tr.json +78 -75
  96. package/shared/localization/locales/uk.json +78 -75
  97. package/shared/localization/locales/vi.json +78 -75
  98. package/shared/localization/locales/zh-HK.json +78 -75
  99. package/shared/localization/locales/zh-TW.json +79 -76
  100. package/shared/localization/locales/zh.json +78 -75
  101. package/third-party/chromium-synchronization/inspector-issueAdded-types-test.js +1 -0
  102. package/types/artifacts.d.ts +1 -0
  103. package/types/config.d.ts +0 -38
  104. package/types/internal/rxjs.d.ts +4 -0
  105. package/types/internal/smokehouse.d.ts +10 -5
  106. package/types/lhr/settings.d.ts +13 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "core/audits/accessibility/accesskeys.js | description": {
3
- "message": "Pääsyavaimien avulla käyttäjät voivat nopeasti kohdistaa tiettyyn sivun osaan. Jotta sivulla siirtyminen onnistuu, jokaisen pääsyavaimen on oltava yksilöllinen. [Lue lisää pääsyavaimista](https://dequeuniversity.com/rules/axe/4.7/accesskeys)."
3
+ "message": "Pääsyavaimien avulla käyttäjät voivat nopeasti kohdistaa tiettyyn sivun osaan. Jotta sivulla siirtyminen onnistuu, jokaisen pääsyavaimen on oltava yksilöllinen. [Lue lisää pääsyavaimista](https://dequeuniversity.com/rules/axe/4.8/accesskeys)."
4
4
  },
5
5
  "core/audits/accessibility/accesskeys.js | failureTitle": {
6
6
  "message": "`[accesskey]`-arvot eivät ole yksilöllisiä"
@@ -9,7 +9,7 @@
9
9
  "message": "`[accesskey]`-arvot ovat yksilöllisiä."
10
10
  },
11
11
  "core/audits/accessibility/aria-allowed-attr.js | description": {
12
- "message": "Jokainen ARIA-`role` tukee tiettyä `aria-*`-määritteiden osaa. Vastaavuusjärjestyksen sekoittaminen mitätöi `aria-*`-määritteet. [Lue lisää ARIA-määritteiden ja niiden roolien yhdistämisestä](https://dequeuniversity.com/rules/axe/4.7/aria-allowed-attr)."
12
+ "message": "Jokainen ARIA-`role` tukee tiettyä `aria-*`-määritteiden osaa. Vastaavuusjärjestyksen sekoittaminen mitätöi `aria-*`-määritteet. [Lue lisää ARIA-määritteiden ja niiden roolien yhdistämisestä](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-attr)."
13
13
  },
14
14
  "core/audits/accessibility/aria-allowed-attr.js | failureTitle": {
15
15
  "message": "`[aria-*]`-määritteet eivät vastaa rooleja"
@@ -18,7 +18,7 @@
18
18
  "message": "`[aria-*]`-määritteet vastaavat roolejaan"
19
19
  },
20
20
  "core/audits/accessibility/aria-allowed-role.js | description": {
21
- "message": "ARIA-roolit (`role`) auttavat avustavia teknologioita tuntemaan jokaisen verkkosivun elementin roolin. Jos roolin (`role`) arvot on kirjoitettu väärin, ARIA-roolin (`role`) arvoja ei ole olemassa tai roolit ovat abstrakteja, elementin tarkoitusta ei kerrota avustavan teknologian käyttäjille. [Lue lisää ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.7/aria-allowed-roles)."
21
+ "message": "ARIA-roolit (`role`) auttavat avustavia teknologioita tuntemaan jokaisen verkkosivun elementin roolin. Jos roolin (`role`) arvot on kirjoitettu väärin, ARIA-roolin (`role`) arvoja ei ole olemassa tai roolit ovat abstrakteja, elementin tarkoitusta ei kerrota avustavan teknologian käyttäjille. [Lue lisää ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.8/aria-allowed-roles)."
22
22
  },
23
23
  "core/audits/accessibility/aria-allowed-role.js | failureTitle": {
24
24
  "message": "Elementille (`role=\"\"`) määritetyt arvot eivät ole kelvollisia ARIA-rooleja."
@@ -27,7 +27,7 @@
27
27
  "message": "Elementille (`role=\"\"`) määritetyt arvot ovat kelvollisia ARIA-rooleja."
28
28
  },
29
29
  "core/audits/accessibility/aria-command-name.js | description": {
30
- "message": "Jos elementin nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit helpottaa komentoelementtien käyttöä](https://dequeuniversity.com/rules/axe/4.7/aria-command-name)."
30
+ "message": "Jos elementin nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit helpottaa komentoelementtien käyttöä](https://dequeuniversity.com/rules/axe/4.8/aria-command-name)."
31
31
  },
32
32
  "core/audits/accessibility/aria-command-name.js | failureTitle": {
33
33
  "message": "Elementeillä (`button`, `link` ja `menuitem`) ei ole esteettömiä nimiä"
@@ -36,7 +36,7 @@
36
36
  "message": "Elementeillä (`button`, `link` ja `menuitem`) on esteettömät nimet"
37
37
  },
38
38
  "core/audits/accessibility/aria-dialog-name.js | description": {
39
- "message": "ARIA-valintaikkunaelementit, joissa ei ole saavutettavia nimiä, voivat estää näytönlukuohjelmien käyttäjiä havaitsemasta elementtien tarkoituksen. [Katso, miten voit helpottaa ARIA-valintaikkunan elementtien käyttöä](https://dequeuniversity.com/rules/axe/4.7/aria-dialog-name)."
39
+ "message": "ARIA-valintaikkunaelementit, joissa ei ole saavutettavia nimiä, voivat estää näytönlukuohjelmien käyttäjiä havaitsemasta elementtien tarkoituksen. [Katso, miten voit helpottaa ARIA-valintaikkunan elementtien käyttöä](https://dequeuniversity.com/rules/axe/4.8/aria-dialog-name)."
40
40
  },
41
41
  "core/audits/accessibility/aria-dialog-name.js | failureTitle": {
42
42
  "message": "Elementtien, joissa on `role=\"dialog\"` tai `role=\"alertdialog\"`, nimi ei ole saavutettava."
@@ -45,7 +45,7 @@
45
45
  "message": "Elementtien, joissa on `role=\"dialog\"` tai `role=\"alertdialog\"`, nimi on saavutettava."
46
46
  },
47
47
  "core/audits/accessibility/aria-hidden-body.js | description": {
48
- "message": "Näytönlukuohjelmat ja muut avustavat teknologiat toimivat arvaamattomasti, kun `aria-hidden=\"true\"` asetetaan dokumentin kohdassa `<body>`. [Katso, miten `aria-hidden` vaikuttaa dokumentin tekstiosaan](https://dequeuniversity.com/rules/axe/4.7/aria-hidden-body)."
48
+ "message": "Näytönlukuohjelmat ja muut avustavat teknologiat toimivat arvaamattomasti, kun `aria-hidden=\"true\"` asetetaan dokumentin kohdassa `<body>`. [Katso, miten `aria-hidden` vaikuttaa dokumentin tekstiosaan](https://dequeuniversity.com/rules/axe/4.8/aria-hidden-body)."
49
49
  },
50
50
  "core/audits/accessibility/aria-hidden-body.js | failureTitle": {
51
51
  "message": "`[aria-hidden=\"true\"]` on dokumentin kohdassa `<body>`"
@@ -54,7 +54,7 @@
54
54
  "message": "`[aria-hidden=\"true\"]` ei ole dokumentin kohdassa `<body>`"
55
55
  },
56
56
  "core/audits/accessibility/aria-hidden-focus.js | description": {
57
- "message": "Jos `[aria-hidden=\"true\"]`-elementillä on tarkennettavia alaosia, näytönlukuohjelmat ja muut avustavat teknologiat eivät löydä niitä. [Katso, miten `aria-hidden` vaikuttaa kohdistettaviin elementteihin](https://dequeuniversity.com/rules/axe/4.7/aria-hidden-focus)."
57
+ "message": "Jos `[aria-hidden=\"true\"]`-elementillä on tarkennettavia alaosia, näytönlukuohjelmat ja muut avustavat teknologiat eivät löydä niitä. [Katso, miten `aria-hidden` vaikuttaa kohdistettaviin elementteihin](https://dequeuniversity.com/rules/axe/4.8/aria-hidden-focus)."
58
58
  },
59
59
  "core/audits/accessibility/aria-hidden-focus.js | failureTitle": {
60
60
  "message": "`[aria-hidden=\"true\"]`-elementeissä on tarkennettavia alaosia"
@@ -63,7 +63,7 @@
63
63
  "message": "`[aria-hidden=\"true\"]`-elementeissä ei ole tarkennettavia alaosia"
64
64
  },
65
65
  "core/audits/accessibility/aria-input-field-name.js | description": {
66
- "message": "Jos syötekentän nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää syöttökenttien tunnisteista](https://dequeuniversity.com/rules/axe/4.7/aria-input-field-name)."
66
+ "message": "Jos syötekentän nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää syöttökenttien tunnisteista](https://dequeuniversity.com/rules/axe/4.8/aria-input-field-name)."
67
67
  },
68
68
  "core/audits/accessibility/aria-input-field-name.js | failureTitle": {
69
69
  "message": "ARIA-syötekenttien nimet eivät ole esteettömiä"
@@ -72,7 +72,7 @@
72
72
  "message": "ARIA-syötekenttien nimet ovat esteettömiä"
73
73
  },
74
74
  "core/audits/accessibility/aria-meter-name.js | description": {
75
- "message": "Jos elementin nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit nimetä `meter`-elementtejä](https://dequeuniversity.com/rules/axe/4.7/aria-meter-name)."
75
+ "message": "Jos elementin nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit nimetä `meter`-elementtejä](https://dequeuniversity.com/rules/axe/4.8/aria-meter-name)."
76
76
  },
77
77
  "core/audits/accessibility/aria-meter-name.js | failureTitle": {
78
78
  "message": "ARIA-elementeillä (`meter`) ei ole esteettömiä nimiä"
@@ -81,7 +81,7 @@
81
81
  "message": "ARIA-elementeillä (`meter`) on esteettömät nimet"
82
82
  },
83
83
  "core/audits/accessibility/aria-progressbar-name.js | description": {
84
- "message": "Jos elementin (`progressbar`) nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää `progressbar`-elementtien nimeämisestä](https://dequeuniversity.com/rules/axe/4.7/aria-progressbar-name)."
84
+ "message": "Jos elementin (`progressbar`) nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää `progressbar`-elementtien nimeämisestä](https://dequeuniversity.com/rules/axe/4.8/aria-progressbar-name)."
85
85
  },
86
86
  "core/audits/accessibility/aria-progressbar-name.js | failureTitle": {
87
87
  "message": "ARIA-elementeillä (`progressbar`) ei ole esteettömiä nimiä"
@@ -90,7 +90,7 @@
90
90
  "message": "ARIA-elementeillä (`progressbar`) on esteettömät nimet"
91
91
  },
92
92
  "core/audits/accessibility/aria-required-attr.js | description": {
93
- "message": "Joillakin ARIA-rooleilla on pakollisia määritteitä, jotka kuvaavat elementin tilaa näytönlukuohjelmille. [Lue lisää rooleista ja pakollisista määritteistä](https://dequeuniversity.com/rules/axe/4.7/aria-required-attr)."
93
+ "message": "Joillakin ARIA-rooleilla on pakollisia määritteitä, jotka kuvaavat elementin tilaa näytönlukuohjelmille. [Lue lisää rooleista ja pakollisista määritteistä](https://dequeuniversity.com/rules/axe/4.8/aria-required-attr)."
94
94
  },
95
95
  "core/audits/accessibility/aria-required-attr.js | failureTitle": {
96
96
  "message": "`[role]`-elementeissä ei ole kaikkia vaadittuja `[aria-*]`-määritteitä"
@@ -99,7 +99,7 @@
99
99
  "message": "`[role]`-elementeissä on kaikki vaaditut `[aria-*]`-määritteet"
100
100
  },
101
101
  "core/audits/accessibility/aria-required-children.js | description": {
102
- "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot joidenkin alatason ARIA-roolien on kuuluttava tiettyihin ylätason rooleihin. [Lue lisää rooleista ja pakollisista alatason elementeistä](https://dequeuniversity.com/rules/axe/4.7/aria-required-children)."
102
+ "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot joidenkin alatason ARIA-roolien on kuuluttava tiettyihin ylätason rooleihin. [Lue lisää rooleista ja pakollisista alatason elementeistä](https://dequeuniversity.com/rules/axe/4.8/aria-required-children)."
103
103
  },
104
104
  "core/audits/accessibility/aria-required-children.js | failureTitle": {
105
105
  "message": "ARIAn `[role]` sisältämät elementit edellyttävät alatasoilta tiettyä elementtiä (`[role]`), mutta se puuttuu osalta tai kaikilta alatasoilta."
@@ -108,7 +108,7 @@
108
108
  "message": "ARIAn `[role]` sisältämät elementit edellyttävät alatasoilta tiettyä elementtiä (`[role]`), joka on kaikilla alatasoilla."
109
109
  },
110
110
  "core/audits/accessibility/aria-required-parent.js | description": {
111
- "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot joidenkin alatason ARIA-roolien on kuuluttava tiettyihin ylätason rooleihin. [Lue lisää ARIA-rooleista ja pakollisesta ylätason elementistä](https://dequeuniversity.com/rules/axe/4.7/aria-required-parent)."
111
+ "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot joidenkin alatason ARIA-roolien on kuuluttava tiettyihin ylätason rooleihin. [Lue lisää ARIA-rooleista ja pakollisesta ylätason elementistä](https://dequeuniversity.com/rules/axe/4.8/aria-required-parent)."
112
112
  },
113
113
  "core/audits/accessibility/aria-required-parent.js | failureTitle": {
114
114
  "message": "`[role]`-elementit eivät sisälly niiden pakolliseen ylätason elementtiin"
@@ -117,7 +117,7 @@
117
117
  "message": "`[role]`-elementit sisältyvät niiden pakolliseen ylätason elementtiin"
118
118
  },
119
119
  "core/audits/accessibility/aria-roles.js | description": {
120
- "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot ARIA-rooleilla on oltava kelvolliset arvot. [Lue lisää kelvollisista ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.7/aria-roles)."
120
+ "message": "Voidakseen suorittaa esteettömyyteen liittyvät toiminnot ARIA-rooleilla on oltava kelvolliset arvot. [Lue lisää kelvollisista ARIA-rooleista](https://dequeuniversity.com/rules/axe/4.8/aria-roles)."
121
121
  },
122
122
  "core/audits/accessibility/aria-roles.js | failureTitle": {
123
123
  "message": "`[role]`-arvot eivät ole kelvollisia"
@@ -126,7 +126,7 @@
126
126
  "message": "`[role]`-arvot ovat kelvollisia"
127
127
  },
128
128
  "core/audits/accessibility/aria-text.js | description": {
129
- "message": "Kun `role=text` lisätään merkinnöillä erotetun tekstinoodin ympärille, VoiceOver käsittelee sitä yhtenä ilmauksena, mutta elementin kohdistettavia alakohtia ei ilmoiteta. [Lue lisää `role=text`‐määritteestä](https://dequeuniversity.com/rules/axe/4.7/aria-text)."
129
+ "message": "Kun `role=text` lisätään merkinnöillä erotetun tekstinoodin ympärille, VoiceOver käsittelee sitä yhtenä ilmauksena, mutta elementin kohdistettavia alakohtia ei ilmoiteta. [Lue lisää `role=text`‐määritteestä](https://dequeuniversity.com/rules/axe/4.8/aria-text)."
130
130
  },
131
131
  "core/audits/accessibility/aria-text.js | failureTitle": {
132
132
  "message": "`role=text`-määritteen sisältävillä elementeillä on kohdistettavia alakohtia."
@@ -135,7 +135,7 @@
135
135
  "message": "`role=text`-määritteen sisältävillä elementeillä ei ole kohdistettavia alakohtia."
136
136
  },
137
137
  "core/audits/accessibility/aria-toggle-field-name.js | description": {
138
- "message": "Jos päälle/pois-kentän nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää päälle/pois-kentistä](https://dequeuniversity.com/rules/axe/4.7/aria-toggle-field-name)."
138
+ "message": "Jos päälle/pois-kentän nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää päälle/pois-kentistä](https://dequeuniversity.com/rules/axe/4.8/aria-toggle-field-name)."
139
139
  },
140
140
  "core/audits/accessibility/aria-toggle-field-name.js | failureTitle": {
141
141
  "message": "ARIAn päälle/pois-kenttien nimet eivät ole esteettömiä"
@@ -144,7 +144,7 @@
144
144
  "message": "ARIAn päälle/pois-kenttien nimet ovat esteettömiä"
145
145
  },
146
146
  "core/audits/accessibility/aria-tooltip-name.js | description": {
147
- "message": "Jos elementin vihjetekstin nimi ei ole saavutettava, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit nimetä `tooltip`-elementtejä](https://dequeuniversity.com/rules/axe/4.7/aria-tooltip-name)."
147
+ "message": "Jos elementin vihjetekstin nimi ei ole saavutettava, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Katso, miten voit nimetä `tooltip`-elementtejä](https://dequeuniversity.com/rules/axe/4.8/aria-tooltip-name)."
148
148
  },
149
149
  "core/audits/accessibility/aria-tooltip-name.js | failureTitle": {
150
150
  "message": "ARIA-elementeillä (`tooltip`) ei ole esteettömiä nimiä"
@@ -153,7 +153,7 @@
153
153
  "message": "ARIA-elementeillä (`tooltip`) on esteettömät nimet"
154
154
  },
155
155
  "core/audits/accessibility/aria-treeitem-name.js | description": {
156
- "message": "Jos elementin (`treeitem`) nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää `treeitem`-elementtien merkitsemisestä](https://dequeuniversity.com/rules/axe/4.7/aria-treeitem-name)."
156
+ "message": "Jos elementin (`treeitem`) nimi ei ole esteetön, näytönlukuohjelmat sanovat sen kohdalla geneerisen nimen, jolloin näytönlukuohjelmien käyttäjät eivät voi käyttää sitä. [Lue lisää `treeitem`-elementtien merkitsemisestä](https://dequeuniversity.com/rules/axe/4.8/aria-treeitem-name)."
157
157
  },
158
158
  "core/audits/accessibility/aria-treeitem-name.js | failureTitle": {
159
159
  "message": "ARIA-elementeillä (`treeitem`) ei ole esteettömiä nimiä"
@@ -162,7 +162,7 @@
162
162
  "message": "ARIA-elementeillä (`treeitem`) on esteettömät nimet"
163
163
  },
164
164
  "core/audits/accessibility/aria-valid-attr-value.js | description": {
165
- "message": "Avustustekniikat (kuten näytönlukuohjelmat) eivät voi tulkita ARIA-määritteitä, joissa on virheelliset arvot. [Lue lisää kelvollisista ARIA-määritteiden arvoista](https://dequeuniversity.com/rules/axe/4.7/aria-valid-attr-value)."
165
+ "message": "Avustustekniikat (kuten näytönlukuohjelmat) eivät voi tulkita ARIA-määritteitä, joissa on virheelliset arvot. [Lue lisää kelvollisista ARIA-määritteiden arvoista](https://dequeuniversity.com/rules/axe/4.8/aria-valid-attr-value)."
166
166
  },
167
167
  "core/audits/accessibility/aria-valid-attr-value.js | failureTitle": {
168
168
  "message": "`[aria-*]`-määritteiden arvot eivät ole kelvollisia"
@@ -171,7 +171,7 @@
171
171
  "message": "`[aria-*]`-määritteiden arvot ovat kelvollisia"
172
172
  },
173
173
  "core/audits/accessibility/aria-valid-attr.js | description": {
174
- "message": "Avustustekniikat (kuten näytönlukuohjelmat) eivät voi tulkita ARIA-määritteitä, joilla on virheelliset nimet. [Lue lisää kelvollisista ARIA-määritteistä](https://dequeuniversity.com/rules/axe/4.7/aria-valid-attr)."
174
+ "message": "Avustustekniikat (kuten näytönlukuohjelmat) eivät voi tulkita ARIA-määritteitä, joilla on virheelliset nimet. [Lue lisää kelvollisista ARIA-määritteistä](https://dequeuniversity.com/rules/axe/4.8/aria-valid-attr)."
175
175
  },
176
176
  "core/audits/accessibility/aria-valid-attr.js | failureTitle": {
177
177
  "message": "`[aria-*]`-määritteet eivät ole kelvollisia tai sisältävät kirjoitusvirheitä"
@@ -183,7 +183,7 @@
183
183
  "message": "Hylätyt elementit"
184
184
  },
185
185
  "core/audits/accessibility/button-name.js | description": {
186
- "message": "Kun painikkeen nimi ei ole esteetön, näytönlukuohjelmat ilmoittavat sen painikkeeksi, jolloin se on hyödytön näytönlukuohjelmia tarvitseville käyttäjille. [Katso, miten painikkeista voi tehdä saavutettavampia](https://dequeuniversity.com/rules/axe/4.7/button-name)."
186
+ "message": "Kun painikkeen nimi ei ole esteetön, näytönlukuohjelmat ilmoittavat sen painikkeeksi, jolloin se on hyödytön näytönlukuohjelmia tarvitseville käyttäjille. [Katso, miten painikkeista voi tehdä saavutettavampia](https://dequeuniversity.com/rules/axe/4.8/button-name)."
187
187
  },
188
188
  "core/audits/accessibility/button-name.js | failureTitle": {
189
189
  "message": "Painikkeiden nimet eivät ole esteettömiä"
@@ -192,7 +192,7 @@
192
192
  "message": "Painikkeiden nimet ovat esteettömiä"
193
193
  },
194
194
  "core/audits/accessibility/bypass.js | description": {
195
- "message": "Tapojen lisääminen toistuvan sisällön ohittamiseen auttaa näppäimistön käyttäjiä siirtymään sivulla tehokkaammin. [Lue lisää ohituksista](https://dequeuniversity.com/rules/axe/4.7/bypass)."
195
+ "message": "Tapojen lisääminen toistuvan sisällön ohittamiseen auttaa näppäimistön käyttäjiä siirtymään sivulla tehokkaammin. [Lue lisää ohituksista](https://dequeuniversity.com/rules/axe/4.8/bypass)."
196
196
  },
197
197
  "core/audits/accessibility/bypass.js | failureTitle": {
198
198
  "message": "Sivu ei sisällä otsikkoa, ohituslinkkiä tai maamerkin aluetta"
@@ -201,7 +201,7 @@
201
201
  "message": "Sivu sisältää otsikon, ohituslinkin tai maamerkin alueen"
202
202
  },
203
203
  "core/audits/accessibility/color-contrast.js | description": {
204
- "message": "Alhaisen kontrastin teksti on monelle vaikea tai mahdoton lukea. [Lue lisää riittävän värikontrastin lisäämisestä](https://dequeuniversity.com/rules/axe/4.7/color-contrast)."
204
+ "message": "Alhaisen kontrastin teksti on monelle vaikea tai mahdoton lukea. [Lue lisää riittävän värikontrastin lisäämisestä](https://dequeuniversity.com/rules/axe/4.8/color-contrast)."
205
205
  },
206
206
  "core/audits/accessibility/color-contrast.js | failureTitle": {
207
207
  "message": "Taustan ja etualan värien kontrastisuhde ei ole riittävä."
@@ -210,7 +210,7 @@
210
210
  "message": "Taustan ja etualan värien kontrastisuhde on riittävä"
211
211
  },
212
212
  "core/audits/accessibility/definition-list.js | description": {
213
- "message": "Kun määritelmäluetteloita ei ole merkitty kunnolla, näytönlukuohjelmien tuottama sisältö voi olla sekavaa tai epätarkkaa. [Katso, miten määritelmäluettelot jäsennetään oikein](https://dequeuniversity.com/rules/axe/4.7/definition-list)."
213
+ "message": "Kun määritelmäluetteloita ei ole merkitty kunnolla, näytönlukuohjelmien tuottama sisältö voi olla sekavaa tai epätarkkaa. [Katso, miten määritelmäluettelot jäsennetään oikein](https://dequeuniversity.com/rules/axe/4.8/definition-list)."
214
214
  },
215
215
  "core/audits/accessibility/definition-list.js | failureTitle": {
216
216
  "message": "`<dl>`-elementit eivät sisällä vain oikein järjestettyjä `<dt>`- ja `<dd>`-ryhmiä ja `<script>`-, `<template>`- tai `<div>`-elementtejä."
@@ -219,7 +219,7 @@
219
219
  "message": "`<dl>`-elementit sisältävät vain oikein järjestettyjä `<dt>`- ja `<dd>`-ryhmiä ja `<script>`-, `<template>` tai `<div>`-elementtejä"
220
220
  },
221
221
  "core/audits/accessibility/dlitem.js | description": {
222
- "message": "Määritelmien luettelokohdat (`<dt>` ja `<dd>`) on yhdistettävä ylätason `<dl>`-elementtiin, jotta näytönlukuohjelmat voivat varmasti lukea ne oikein. [Katso, miten määritelmäluettelot jäsennetään oikein](https://dequeuniversity.com/rules/axe/4.7/dlitem)."
222
+ "message": "Määritelmien luettelokohdat (`<dt>` ja `<dd>`) on yhdistettävä ylätason `<dl>`-elementtiin, jotta näytönlukuohjelmat voivat varmasti lukea ne oikein. [Katso, miten määritelmäluettelot jäsennetään oikein](https://dequeuniversity.com/rules/axe/4.8/dlitem)."
223
223
  },
224
224
  "core/audits/accessibility/dlitem.js | failureTitle": {
225
225
  "message": "Määritelmien luettelokohtia ei ole yhdistetty `<dl>`-elementeillä"
@@ -228,7 +228,7 @@
228
228
  "message": "Määritelmien luettelokohdat on yhdistetty `<dl>`-elementeillä"
229
229
  },
230
230
  "core/audits/accessibility/document-title.js | description": {
231
- "message": "Nimi antaa näytönlukuohjelmaa käyttäville yleiskuvan sivusta, ja hakukoneen käyttäjille nimi on tärkeä oleellisten sivujen löytämiseen hakutuloksista. [Lue lisää dokumenttien otsikoista](https://dequeuniversity.com/rules/axe/4.7/document-title)."
231
+ "message": "Nimi antaa näytönlukuohjelmaa käyttäville yleiskuvan sivusta, ja hakukoneen käyttäjille nimi on tärkeä oleellisten sivujen löytämiseen hakutuloksista. [Lue lisää dokumenttien otsikoista](https://dequeuniversity.com/rules/axe/4.8/document-title)."
232
232
  },
233
233
  "core/audits/accessibility/document-title.js | failureTitle": {
234
234
  "message": "Dokumentissa ei ole `<title>`-elementtiä"
@@ -237,7 +237,7 @@
237
237
  "message": "Dokumentissa on `<title>`-elementti"
238
238
  },
239
239
  "core/audits/accessibility/duplicate-id-active.js | description": {
240
- "message": "Tarkentamista tukevilla elementeillä on oltava yksilöllinen `id`, jotta avustava teknologia havaitsee ne. [Katso, miten voit korjata päällekkäisiä `id`-merkintöjä](https://dequeuniversity.com/rules/axe/4.7/duplicate-id-active)."
240
+ "message": "Tarkentamista tukevilla elementeillä on oltava yksilöllinen `id`, jotta avustava teknologia havaitsee ne. [Katso, miten voit korjata päällekkäisiä `id`-merkintöjä](https://dequeuniversity.com/rules/axe/4.8/duplicate-id-active)."
241
241
  },
242
242
  "core/audits/accessibility/duplicate-id-active.js | failureTitle": {
243
243
  "message": "Aktiivisten, tarkennettavien elementtien `[id]`-määritteet eivät ole yksilöllisiä"
@@ -246,7 +246,7 @@
246
246
  "message": "Aktiivisten, tarkennettavien elementtien `[id]`-määritteet ovat yksilöllisiä"
247
247
  },
248
248
  "core/audits/accessibility/duplicate-id-aria.js | description": {
249
- "message": "ARIA-tunnisteen on oltava yksilöllinen, jotta avustavat teknologiat eivät jätä muita esiintymiä huomioimatta. [Katso, miten voit korjata päällekkäisiä ARIA-tunnuksia](https://dequeuniversity.com/rules/axe/4.7/duplicate-id-aria)."
249
+ "message": "ARIA-tunnisteen on oltava yksilöllinen, jotta avustavat teknologiat eivät jätä muita esiintymiä huomioimatta. [Katso, miten voit korjata päällekkäisiä ARIA-tunnuksia](https://dequeuniversity.com/rules/axe/4.8/duplicate-id-aria)."
250
250
  },
251
251
  "core/audits/accessibility/duplicate-id-aria.js | failureTitle": {
252
252
  "message": "ARIA-tunnisteet eivät ole yksilöllisiä"
@@ -255,7 +255,7 @@
255
255
  "message": "ARIA-tunnisteet ovat yksilöllisiä"
256
256
  },
257
257
  "core/audits/accessibility/empty-heading.js | description": {
258
- "message": "Jos otsikon tekstissä ei ole sisältöä tai teksti ei ole käytettävissä, näytönlukuohjelman käyttäjät eivät saa pääsyä tietoihin sivun rakenteessa. [Lue lisää otsikoista](https://dequeuniversity.com/rules/axe/4.7/empty-heading)."
258
+ "message": "Jos otsikon tekstissä ei ole sisältöä tai teksti ei ole käytettävissä, näytönlukuohjelman käyttäjät eivät saa pääsyä tietoihin sivun rakenteessa. [Lue lisää otsikoista](https://dequeuniversity.com/rules/axe/4.8/empty-heading)."
259
259
  },
260
260
  "core/audits/accessibility/empty-heading.js | failureTitle": {
261
261
  "message": "Otsikkoelementeissä ei ole sisältöä."
@@ -264,7 +264,7 @@
264
264
  "message": "Kaikissa otsikkoelementeissä on sisältöä."
265
265
  },
266
266
  "core/audits/accessibility/form-field-multiple-labels.js | description": {
267
- "message": "Jos lomakekentillä on useita tunnisteita, näytönlukuohjelmat ja muut avustavat teknologiat saattavat viitata niihin hämmentävästi käyttäen ensimmäistä, viimeistä tai jokaista tunnistetta. [Lue lisää lomaketunnisteiden käyttämisestä](https://dequeuniversity.com/rules/axe/4.7/form-field-multiple-labels)."
267
+ "message": "Jos lomakekentillä on useita tunnisteita, näytönlukuohjelmat ja muut avustavat teknologiat saattavat viitata niihin hämmentävästi käyttäen ensimmäistä, viimeistä tai jokaista tunnistetta. [Lue lisää lomaketunnisteiden käyttämisestä](https://dequeuniversity.com/rules/axe/4.8/form-field-multiple-labels)."
268
268
  },
269
269
  "core/audits/accessibility/form-field-multiple-labels.js | failureTitle": {
270
270
  "message": "Lomakekentillä on useita tunnisteita"
@@ -273,7 +273,7 @@
273
273
  "message": "Lomakekentillä ei ole useita tunnisteita"
274
274
  },
275
275
  "core/audits/accessibility/frame-title.js | description": {
276
- "message": "Näytönlukuohjelman käyttäjät saavat tietää kehysten sisällöt vain kehysten nimien avulla. [Lue lisää kehysten nimistä](https://dequeuniversity.com/rules/axe/4.7/frame-title)."
276
+ "message": "Näytönlukuohjelman käyttäjät saavat tietää kehysten sisällöt vain kehysten nimien avulla. [Lue lisää kehysten nimistä](https://dequeuniversity.com/rules/axe/4.8/frame-title)."
277
277
  },
278
278
  "core/audits/accessibility/frame-title.js | failureTitle": {
279
279
  "message": "`<frame>`- tai `<iframe>`-elementeillä ei ole nimeä"
@@ -282,7 +282,7 @@
282
282
  "message": "`<frame>`- tai `<iframe>`-elementeillä on nimi"
283
283
  },
284
284
  "core/audits/accessibility/heading-order.js | description": {
285
- "message": "Loogisesti järjestetyt ja kaikki tasot käsittävät otsikot kertovat sivun semanttisesta rakenteesta, jolloin sen selaaminen ja ymmärtäminen avustavilla teknologioilla on helpompaa. [Lue lisää otsikkojärjestyksestä](https://dequeuniversity.com/rules/axe/4.7/heading-order)."
285
+ "message": "Loogisesti järjestetyt ja kaikki tasot käsittävät otsikot kertovat sivun semanttisesta rakenteesta, jolloin sen selaaminen ja ymmärtäminen avustavilla teknologioilla on helpompaa. [Lue lisää otsikkojärjestyksestä](https://dequeuniversity.com/rules/axe/4.8/heading-order)."
286
286
  },
287
287
  "core/audits/accessibility/heading-order.js | failureTitle": {
288
288
  "message": "Otsikkoelementit eivät ole laskevassa järjestyksessä"
@@ -291,7 +291,7 @@
291
291
  "message": "Otsikkoelementit ovat laskevassa järjestyksessä"
292
292
  },
293
293
  "core/audits/accessibility/html-has-lang.js | description": {
294
- "message": "Jos sivulla ei ole `lang`-määritettä, näytönlukuohjelma arvioi kieleksi oletuskielen, jonka käyttäjä valitsi ottaessaan näytönlukuohjelman käyttöön. Jos oletuskieli ei ole käytössä sivulla, näytönlukuohjelma voi ilmoittaa sivun tekstin väärin. [Lue lisää `lang`‐määritteestä](https://dequeuniversity.com/rules/axe/4.7/html-has-lang)."
294
+ "message": "Jos sivulla ei ole `lang`-määritettä, näytönlukuohjelma arvioi kieleksi oletuskielen, jonka käyttäjä valitsi ottaessaan näytönlukuohjelman käyttöön. Jos oletuskieli ei ole käytössä sivulla, näytönlukuohjelma voi ilmoittaa sivun tekstin väärin. [Lue lisää `lang`‐määritteestä](https://dequeuniversity.com/rules/axe/4.8/html-has-lang)."
295
295
  },
296
296
  "core/audits/accessibility/html-has-lang.js | failureTitle": {
297
297
  "message": "`<html>`-elementissä ei ole `[lang]`-määritettä"
@@ -300,7 +300,7 @@
300
300
  "message": "`<html>`-elementissä on `[lang]`-määrite"
301
301
  },
302
302
  "core/audits/accessibility/html-lang-valid.js | description": {
303
- "message": "Kelvollisen [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) ‑määritteen ilmoittaminen elementeille auttaa näytönlukuohjelmaa kertomaan tekstin oikein. [Lue lisää `lang`‐määritteen käyttämisestä](https://dequeuniversity.com/rules/axe/4.7/html-lang-valid)."
303
+ "message": "Kelvollisen [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) ‑määritteen ilmoittaminen elementeille auttaa näytönlukuohjelmaa kertomaan tekstin oikein. [Lue lisää `lang`‐määritteen käyttämisestä](https://dequeuniversity.com/rules/axe/4.8/html-lang-valid)."
304
304
  },
305
305
  "core/audits/accessibility/html-lang-valid.js | failureTitle": {
306
306
  "message": "`<html>`-elementin `[lang]`-määritteen arvo ei ole kelvollinen"
@@ -309,7 +309,7 @@
309
309
  "message": "`<html>`-elementin `[lang]`-määritteen arvo on kelvollinen"
310
310
  },
311
311
  "core/audits/accessibility/html-xml-lang-mismatch.js | description": {
312
- "message": "Jos verkkosivun kieli ei ole johdonmukaista, näytönlukuohjelma saattaa ilmoittaa sivun tekstin väärin. [Lue lisää `lang`‐määritteestä](https://dequeuniversity.com/rules/axe/4.7/html-xml-lang-mismatch)."
312
+ "message": "Jos verkkosivun kieli ei ole johdonmukaista, näytönlukuohjelma saattaa ilmoittaa sivun tekstin väärin. [Lue lisää `lang`‐määritteestä](https://dequeuniversity.com/rules/axe/4.8/html-xml-lang-mismatch)."
313
313
  },
314
314
  "core/audits/accessibility/html-xml-lang-mismatch.js | failureTitle": {
315
315
  "message": "`<html>`-elementissä ei ole `[xml:lang]`-määritettä, jolla on sama peruskieli kuin `[lang]`-määritteellä."
@@ -318,7 +318,7 @@
318
318
  "message": "`<html>`-elementillä on `[xml:lang]`-määrite, jolla on sama peruskieli kuin `[lang]`-määritteellä."
319
319
  },
320
320
  "core/audits/accessibility/identical-links-same-purpose.js | description": {
321
- "message": "Samaan kohteeseen johtavilla linkeillä on oltava sama kuvaus, jotta käyttäjät ymmärtävät niiden tarkoituksen ja voivat päättää, haluavatko he seurata niitä. [Lue lisää identtisistä linkeistä](https://dequeuniversity.com/rules/axe/4.7/identical-links-same-purpose)."
321
+ "message": "Samaan kohteeseen johtavilla linkeillä on oltava sama kuvaus, jotta käyttäjät ymmärtävät niiden tarkoituksen ja voivat päättää, haluavatko he seurata niitä. [Lue lisää identtisistä linkeistä](https://dequeuniversity.com/rules/axe/4.8/identical-links-same-purpose)."
322
322
  },
323
323
  "core/audits/accessibility/identical-links-same-purpose.js | failureTitle": {
324
324
  "message": "Identtisillä linkeillä ei ole samaa tarkoitusta."
@@ -327,7 +327,7 @@
327
327
  "message": "Identtisillä linkeillä on sama tarkoitus."
328
328
  },
329
329
  "core/audits/accessibility/image-alt.js | description": {
330
- "message": "Informatiivisilla elementeillä pitäisi olla lyhyt ja kuvaileva vaihtoehtoinen teksti. Koristeelliset elementit voidaan ohittaa tyhjällä Alt-määritteellä. [Lue lisää `alt`‐määritteestä](https://dequeuniversity.com/rules/axe/4.7/image-alt)."
330
+ "message": "Informatiivisilla elementeillä pitäisi olla lyhyt ja kuvaileva vaihtoehtoinen teksti. Koristeelliset elementit voidaan ohittaa tyhjällä Alt-määritteellä. [Lue lisää `alt`‐määritteestä](https://dequeuniversity.com/rules/axe/4.8/image-alt)."
331
331
  },
332
332
  "core/audits/accessibility/image-alt.js | failureTitle": {
333
333
  "message": "Kuvaelementeillä ei ole `[alt]`-määritteitä"
@@ -336,7 +336,7 @@
336
336
  "message": "Kuvaelementeillä on `[alt]`-määritteet"
337
337
  },
338
338
  "core/audits/accessibility/image-redundant-alt.js | description": {
339
- "message": "Informatiivisilla elementeillä pitäisi olla lyhyt ja kuvaileva vaihtoehtoinen teksti. Vaihtoehtoinen teksti, joka on täsmälleen sama kuin linkin tai kuvan vieressä oleva teksti, voi olla hämmentävä näytönlukuohjelmien käyttäjille, koska teksti luetaan kahdesti. [Lue lisää `alt`‐määritteestä](https://dequeuniversity.com/rules/axe/4.7/image-redundant-alt)."
339
+ "message": "Informatiivisilla elementeillä pitäisi olla lyhyt ja kuvaileva vaihtoehtoinen teksti. Vaihtoehtoinen teksti, joka on täsmälleen sama kuin linkin tai kuvan vieressä oleva teksti, voi olla hämmentävä näytönlukuohjelmien käyttäjille, koska teksti luetaan kahdesti. [Lue lisää `alt`‐määritteestä](https://dequeuniversity.com/rules/axe/4.8/image-redundant-alt)."
340
340
  },
341
341
  "core/audits/accessibility/image-redundant-alt.js | failureTitle": {
342
342
  "message": "Kuvaelementeissä on `[alt]`-määritteitä, jotka ovat tarpeetonta tekstiä."
@@ -345,7 +345,7 @@
345
345
  "message": "Kuvaelementeissä ei ole `[alt]`-määritteitä, jotka ovat tarpeetonta tekstiä."
346
346
  },
347
347
  "core/audits/accessibility/input-button-name.js | description": {
348
- "message": "Erottuvan ja näkyvän tekstin lisääminen syöttöpainikkeisiin voi auttaa näytönlukuohjelman käyttäjiä ymmärtämään syöttöpainikkeen tarkoituksen. [Lue lisää syöttöpainikkeista](https://dequeuniversity.com/rules/axe/4.7/input-button-name)."
348
+ "message": "Erottuvan ja näkyvän tekstin lisääminen syöttöpainikkeisiin voi auttaa näytönlukuohjelman käyttäjiä ymmärtämään syöttöpainikkeen tarkoituksen. [Lue lisää syöttöpainikkeista](https://dequeuniversity.com/rules/axe/4.8/input-button-name)."
349
349
  },
350
350
  "core/audits/accessibility/input-button-name.js | failureTitle": {
351
351
  "message": "Syöttöpainikkeissa ei ole selkeää tekstiä."
@@ -354,7 +354,7 @@
354
354
  "message": "Syöttöpainikkeilla on erottuva teksti."
355
355
  },
356
356
  "core/audits/accessibility/input-image-alt.js | description": {
357
- "message": "Kun `<input>`-painikkeena käytetään kuvaa, vaihtoehtoisen tekstin lisääminen voi auttaa näytönlukuohjelman käyttäjiä ymmärtämään painikkeen tarkoituksen. [Lue lisää kuvan vaihtoehtoisesta tekstistä](https://dequeuniversity.com/rules/axe/4.7/input-image-alt)."
357
+ "message": "Kun `<input>`-painikkeena käytetään kuvaa, vaihtoehtoisen tekstin lisääminen voi auttaa näytönlukuohjelman käyttäjiä ymmärtämään painikkeen tarkoituksen. [Lue lisää kuvan vaihtoehtoisesta tekstistä](https://dequeuniversity.com/rules/axe/4.8/input-image-alt)."
358
358
  },
359
359
  "core/audits/accessibility/input-image-alt.js | failureTitle": {
360
360
  "message": "`<input type=\"image\">`-elementeissä ei ole `[alt]`-tekstiä"
@@ -363,7 +363,7 @@
363
363
  "message": "`<input type=\"image\">`-elementeissä on `[alt]`-teksti"
364
364
  },
365
365
  "core/audits/accessibility/label-content-name-mismatch.js | description": {
366
- "message": "Näkyvät tekstitunnisteet, jotka eivät vastaa saavutettavaa nimeä, voivat olla hämmentäviä näytönlukuohjelmien käyttäjille. [Lue lisää saavutettavista nimistä](https://dequeuniversity.com/rules/axe/4.7/label-content-name-mismatch)."
366
+ "message": "Näkyvät tekstitunnisteet, jotka eivät vastaa saavutettavaa nimeä, voivat olla hämmentäviä näytönlukuohjelmien käyttäjille. [Lue lisää saavutettavista nimistä](https://dequeuniversity.com/rules/axe/4.8/label-content-name-mismatch)."
367
367
  },
368
368
  "core/audits/accessibility/label-content-name-mismatch.js | failureTitle": {
369
369
  "message": "Näkyvää tekstiä sisältävien elementtien tunnisteilla ei ole vastaavia saavutettavia nimiä."
@@ -372,7 +372,7 @@
372
372
  "message": "Näkyvää tekstiä sisältävien elementtien tunnisteilla on vastaavia saavutettavia nimiä."
373
373
  },
374
374
  "core/audits/accessibility/label.js | description": {
375
- "message": "Tunnisteilla varmistetaan, että avustustekniikat (kuten näytönlukuohjelmat) ilmoittavat lomakkeiden ohjaimista oikein. [Lue lisää lomake-elementtien tunnisteista](https://dequeuniversity.com/rules/axe/4.7/label)."
375
+ "message": "Tunnisteilla varmistetaan, että avustustekniikat (kuten näytönlukuohjelmat) ilmoittavat lomakkeiden ohjaimista oikein. [Lue lisää lomake-elementtien tunnisteista](https://dequeuniversity.com/rules/axe/4.8/label)."
376
376
  },
377
377
  "core/audits/accessibility/label.js | failureTitle": {
378
378
  "message": "Lomakkeiden elementeillä ei ole niihin liittyviä tunnisteita"
@@ -381,7 +381,7 @@
381
381
  "message": "Lomake-elementeillä on niihin liittyvät tunnisteet"
382
382
  },
383
383
  "core/audits/accessibility/landmark-one-main.js | description": {
384
- "message": "Yksi ensisijainen merkki auttaa näytönlukuohjelman käyttäjiä siirtymään verkkosivulle. [Lue lisää merkeistä](https://dequeuniversity.com/rules/axe/4.7/landmark-one-main)."
384
+ "message": "Yksi ensisijainen merkki auttaa näytönlukuohjelman käyttäjiä siirtymään verkkosivulle. [Lue lisää merkeistä](https://dequeuniversity.com/rules/axe/4.8/landmark-one-main)."
385
385
  },
386
386
  "core/audits/accessibility/landmark-one-main.js | failureTitle": {
387
387
  "message": "Dokumentilla ei ole ensisijaista merkkiä."
@@ -390,7 +390,7 @@
390
390
  "message": "Dokumentilla on ensisijainen merkki."
391
391
  },
392
392
  "core/audits/accessibility/link-in-text-block.js | description": {
393
- "message": "Alhaisen kontrastin teksti on monelle vaikea tai mahdoton lukea. Erotettavissa oleva linkkiteksti parantaa heikkonäköisten käyttäjien käyttökokemusta. [Katso, miten voit tehdä linkeistä helposti erottuvia](https://dequeuniversity.com/rules/axe/4.7/link-in-text-block)."
393
+ "message": "Alhaisen kontrastin teksti on monelle vaikea tai mahdoton lukea. Erotettavissa oleva linkkiteksti parantaa heikkonäköisten käyttäjien käyttökokemusta. [Katso, miten voit tehdä linkeistä helposti erottuvia](https://dequeuniversity.com/rules/axe/4.8/link-in-text-block)."
394
394
  },
395
395
  "core/audits/accessibility/link-in-text-block.js | failureTitle": {
396
396
  "message": "Linkit erottuvat helposti vain, jos ne ovat värikkäitä."
@@ -399,7 +399,7 @@
399
399
  "message": "Linkit erottuvat helposti ilman värejä."
400
400
  },
401
401
  "core/audits/accessibility/link-name.js | description": {
402
- "message": "Linkkiteksti (ja vaihtoehtoinen teksti kuvia varten, kun niitä käytetään linkkeinä), joka on erottuva, yksilöllinen ja tarkennettavissa, parantaa näytönlukuohjelmaa käyttävien navigointikokemusta. [Katso, miten voit mahdollistaa linkkien käytön](https://dequeuniversity.com/rules/axe/4.7/link-name)."
402
+ "message": "Linkkiteksti (ja vaihtoehtoinen teksti kuvia varten, kun niitä käytetään linkkeinä), joka on erottuva, yksilöllinen ja tarkennettavissa, parantaa näytönlukuohjelmaa käyttävien navigointikokemusta. [Katso, miten voit mahdollistaa linkkien käytön](https://dequeuniversity.com/rules/axe/4.8/link-name)."
403
403
  },
404
404
  "core/audits/accessibility/link-name.js | failureTitle": {
405
405
  "message": "Linkkien nimet eivät ole helposti erottuvia"
@@ -408,7 +408,7 @@
408
408
  "message": "Linkkien nimet ovat helposti erottuvia"
409
409
  },
410
410
  "core/audits/accessibility/list.js | description": {
411
- "message": "Näytönlukuohjelmat ilmoittavat luettelot tietyillä tavoilla. Kelvollinen luettelorakenne tukee näytönlukuohjelman tuottamaa sisältöä. [Lue lisää oikeasta luettelorakenteesta](https://dequeuniversity.com/rules/axe/4.7/list)."
411
+ "message": "Näytönlukuohjelmat ilmoittavat luettelot tietyillä tavoilla. Kelvollinen luettelorakenne tukee näytönlukuohjelman tuottamaa sisältöä. [Lue lisää oikeasta luettelorakenteesta](https://dequeuniversity.com/rules/axe/4.8/list)."
412
412
  },
413
413
  "core/audits/accessibility/list.js | failureTitle": {
414
414
  "message": "Luettelot eivät sisällä ainoastaan `<li>`-elementtejä ja skriptiä tukevia elementtejä (`<script>` ja `<template>`)"
@@ -417,7 +417,7 @@
417
417
  "message": "Luettelot sisältävät ainoastaan `<li>`-elementtejä ja skriptiä tukevia elementtejä (`<script>` ja `<template>`)"
418
418
  },
419
419
  "core/audits/accessibility/listitem.js | description": {
420
- "message": "Näytönlukuohjelmat edellyttävät, että luettelokohdat (`<li>`) sisältyvät ylätason elementteihin `<ul>`, `<ol>` tai `<menu>`, jotta ne voidaan ilmoittaa oikein. [Lue lisää oikeasta luettelorakenteesta](https://dequeuniversity.com/rules/axe/4.7/listitem)."
420
+ "message": "Näytönlukuohjelmat edellyttävät, että luettelokohdat (`<li>`) sisältyvät ylätason elementteihin `<ul>`, `<ol>` tai `<menu>`, jotta ne voidaan ilmoittaa oikein. [Lue lisää oikeasta luettelorakenteesta](https://dequeuniversity.com/rules/axe/4.8/listitem)."
421
421
  },
422
422
  "core/audits/accessibility/listitem.js | failureTitle": {
423
423
  "message": "Luettelokohdat (`<li>`) eivät sisälly ylätason `<ul>`-, `<ol>`- tai `<menu>`-elementtiin."
@@ -426,7 +426,7 @@
426
426
  "message": "Luettelokohdat (`<li>`) sisältyvät ylätason `<ul>`-, `<ol>`- tai `<menu>`-elementtiin."
427
427
  },
428
428
  "core/audits/accessibility/meta-refresh.js | description": {
429
- "message": "Käyttäjät eivät odota sivun päivittyvän automaattisesti, ja päivittäminen siirtää kohdistuksen takaisin sivun yläreunaan. Tämä voi tehdä käytöstä turhauttavaa tai sekavaa. [Lue lisää refresh-metatagin käyttämisestä](https://dequeuniversity.com/rules/axe/4.7/meta-refresh)."
429
+ "message": "Käyttäjät eivät odota sivun päivittyvän automaattisesti, ja päivittäminen siirtää kohdistuksen takaisin sivun yläreunaan. Tämä voi tehdä käytöstä turhauttavaa tai sekavaa. [Lue lisää refresh-metatagin käyttämisestä](https://dequeuniversity.com/rules/axe/4.8/meta-refresh)."
430
430
  },
431
431
  "core/audits/accessibility/meta-refresh.js | failureTitle": {
432
432
  "message": "Dokumentissa on käytössä `<meta http-equiv=\"refresh\">`"
@@ -435,7 +435,7 @@
435
435
  "message": "Dokumentti ei käytä `<meta http-equiv=\"refresh\">`-tagia"
436
436
  },
437
437
  "core/audits/accessibility/meta-viewport.js | description": {
438
- "message": "Zoomauksen poistaminen käytöstä aiheuttaa ongelmia heikkonäköisille käyttäjille, jotka tarvitsevat näytön suurennusta nähdäkseen verkkosivun sisällön kunnolla. [Lue lisää viewport-metatagin käyttämisestä](https://dequeuniversity.com/rules/axe/4.7/meta-viewport)."
438
+ "message": "Zoomauksen poistaminen käytöstä aiheuttaa ongelmia heikkonäköisille käyttäjille, jotka tarvitsevat näytön suurennusta nähdäkseen verkkosivun sisällön kunnolla. [Lue lisää viewport-metatagin käyttämisestä](https://dequeuniversity.com/rules/axe/4.8/meta-viewport)."
439
439
  },
440
440
  "core/audits/accessibility/meta-viewport.js | failureTitle": {
441
441
  "message": "`[user-scalable=\"no\"]` on käytössä `<meta name=\"viewport\">`-elementissä tai `[maximum-scale]`-määrite on pienempi kuin 5"
@@ -444,7 +444,7 @@
444
444
  "message": "`[user-scalable=\"no\"]` ei ole käytössä `<meta name=\"viewport\">`-elementissä, ja `[maximum-scale]`-määrite on vähintään 5"
445
445
  },
446
446
  "core/audits/accessibility/object-alt.js | description": {
447
- "message": "Näytönlukuohjelmat eivät voi kääntää sisältöä, joka ei ole tekstiä. Vaihtoehtoisen tekstin lisääminen `<object>`-elementteihin auttaa näytönlukuohjelmia esittämään sisällön merkityksen käyttäjille. [Lue lisää `object`-elementin vaihtoehtoisesta tekstistä](https://dequeuniversity.com/rules/axe/4.7/object-alt)."
447
+ "message": "Näytönlukuohjelmat eivät voi kääntää sisältöä, joka ei ole tekstiä. Vaihtoehtoisen tekstin lisääminen `<object>`-elementteihin auttaa näytönlukuohjelmia esittämään sisällön merkityksen käyttäjille. [Lue lisää `object`-elementin vaihtoehtoisesta tekstistä](https://dequeuniversity.com/rules/axe/4.8/object-alt)."
448
448
  },
449
449
  "core/audits/accessibility/object-alt.js | failureTitle": {
450
450
  "message": "`<object>`-elementeissä ei ole vaihtoehtoista tekstiä."
@@ -453,7 +453,7 @@
453
453
  "message": "`<object>`-elementeissä on vaihtoehtoista tekstiä."
454
454
  },
455
455
  "core/audits/accessibility/select-name.js | description": {
456
- "message": "Jos lomake-elementeillä ei ole hyödyllisiä tunnisteita, käyttökokemus voi olla turhauttava näytönlukuohjelman käyttäjille. [Lue lisää `select`-elementistä](https://dequeuniversity.com/rules/axe/4.7/select-name)."
456
+ "message": "Jos lomake-elementeillä ei ole hyödyllisiä tunnisteita, käyttökokemus voi olla turhauttava näytönlukuohjelman käyttäjille. [Lue lisää `select`-elementistä](https://dequeuniversity.com/rules/axe/4.8/select-name)."
457
457
  },
458
458
  "core/audits/accessibility/select-name.js | failureTitle": {
459
459
  "message": "Tietyt elementit eivät sisällä tunniste-elementtejä."
@@ -462,7 +462,7 @@
462
462
  "message": "Tietyt elementit sisältävät tunniste-elementtejä."
463
463
  },
464
464
  "core/audits/accessibility/skip-link.js | description": {
465
- "message": "Ohituslinkin lisääminen voi auttaa käyttäjiä siirtymään pääsisältöön nopeammin. [Lue lisää ohituslinkeistä](https://dequeuniversity.com/rules/axe/4.7/skip-link)."
465
+ "message": "Ohituslinkin lisääminen voi auttaa käyttäjiä siirtymään pääsisältöön nopeammin. [Lue lisää ohituslinkeistä](https://dequeuniversity.com/rules/axe/4.8/skip-link)."
466
466
  },
467
467
  "core/audits/accessibility/skip-link.js | failureTitle": {
468
468
  "message": "Ohituslinkkejä ei voi kohdistaa."
@@ -471,7 +471,7 @@
471
471
  "message": "Ohitettavat linkit ovat kohdistettavissa."
472
472
  },
473
473
  "core/audits/accessibility/tabindex.js | description": {
474
- "message": "Navigointijärjestys on eksplisiittinen, jos arvo on suurempi kuin 0. Vaikka ratkaisu on teknisesti käypä, se tekee usein kokemuksesta turhauttavaa avustustekniikkaa tarvitseville käyttäjille. [Lue lisää `tabindex`‐määritteestä](https://dequeuniversity.com/rules/axe/4.7/tabindex)."
474
+ "message": "Navigointijärjestys on eksplisiittinen, jos arvo on suurempi kuin 0. Vaikka ratkaisu on teknisesti käypä, se tekee usein kokemuksesta turhauttavaa avustustekniikkaa tarvitseville käyttäjille. [Lue lisää `tabindex`‐määritteestä](https://dequeuniversity.com/rules/axe/4.8/tabindex)."
475
475
  },
476
476
  "core/audits/accessibility/tabindex.js | failureTitle": {
477
477
  "message": "Joidenkin elementtien `[tabindex]`-arvo on suurempi kuin 0"
@@ -480,7 +480,7 @@
480
480
  "message": "Yhdenkään elementin `[tabindex]`-arvo ei ole suurempi kuin 0"
481
481
  },
482
482
  "core/audits/accessibility/table-duplicate-name.js | description": {
483
- "message": "Yhteenvetomääritteen tulee kuvata taulukon rakennetta, kun taas `<caption>`-osiossa pitäisi olla näytöllä näkyvä otsikko. Tarkka taulukon merkintä auttaa näytönlukuohjelmien käyttäjiä. [Lue lisää yhteenvedosta ja kuvatekstistä](https://dequeuniversity.com/rules/axe/4.7/table-duplicate-name)."
483
+ "message": "Yhteenvetomääritteen tulee kuvata taulukon rakennetta, kun taas `<caption>`-osiossa pitäisi olla näytöllä näkyvä otsikko. Tarkka taulukon merkintä auttaa näytönlukuohjelmien käyttäjiä. [Lue lisää yhteenvedosta ja kuvatekstistä](https://dequeuniversity.com/rules/axe/4.8/table-duplicate-name)."
484
484
  },
485
485
  "core/audits/accessibility/table-duplicate-name.js | failureTitle": {
486
486
  "message": "Taulukoiden sisältö on sama yhteenvetomääritteessä ja täällä: `<caption>.`"
@@ -489,7 +489,7 @@
489
489
  "message": "Taulukoiden sisältö on eri yhteenvetomääritteessä ja täällä: `<caption>`"
490
490
  },
491
491
  "core/audits/accessibility/table-fake-caption.js | description": {
492
- "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttökokemusta varmistamalla, että taulukot käyttävät varsinaista tekstityselementtiä `[colspan]`-määritteen sisältävien solujen sijaan. [Katso lisätietoa tekstityksistä](https://dequeuniversity.com/rules/axe/4.7/table-fake-caption)."
492
+ "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttökokemusta varmistamalla, että taulukot käyttävät varsinaista tekstityselementtiä `[colspan]`-määritteen sisältävien solujen sijaan. [Katso lisätietoa tekstityksistä](https://dequeuniversity.com/rules/axe/4.8/table-fake-caption)."
493
493
  },
494
494
  "core/audits/accessibility/table-fake-caption.js | failureTitle": {
495
495
  "message": "Taulukoissa ei käytetä `<caption>`-määritettä sellaisten solujen sijaan, joissa on `[colspan]`-attribuutti tekstityksen merkkinä."
@@ -498,7 +498,7 @@
498
498
  "message": "Taulukoissa käytetään `<caption>`-määritettä sellaisten solujen sijaan, joissa on `[colspan]`-attribuutti tekstityksen merkkinä."
499
499
  },
500
500
  "core/audits/accessibility/target-size.js | description": {
501
- "message": "Kun kosketusalueilla on riittävän suuret välit ja koko, käyttäjien, joilla on vaikeuksia kohdistaa pieniin säätimiin, on helpompi aktivoida kohteita. [Lue lisää kosketusalueista](https://dequeuniversity.com/rules/axe/4.7/target-size)."
501
+ "message": "Kun kosketusalueilla on riittävän suuret välit ja koko, käyttäjien, joilla on vaikeuksia kohdistaa pieniin säätimiin, on helpompi aktivoida kohteita. [Lue lisää kosketusalueista](https://dequeuniversity.com/rules/axe/4.8/target-size)."
502
502
  },
503
503
  "core/audits/accessibility/target-size.js | failureTitle": {
504
504
  "message": "Kosketusalueiden koko tai välit eivät ole riittäviä."
@@ -507,7 +507,7 @@
507
507
  "message": "Kosketusalueiden koko ja välit ovat riittäviä."
508
508
  },
509
509
  "core/audits/accessibility/td-has-header.js | description": {
510
- "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttökokemusta varmistamalla, että suuren taulukon (vähintään kolme sarake- ja rivisolua) `<td>`-elementeillä on niihin liittyvä taulukon otsikko. [Lue lisää taulukoiden otsikoista](https://dequeuniversity.com/rules/axe/4.7/td-has-header)."
510
+ "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttökokemusta varmistamalla, että suuren taulukon (vähintään kolme sarake- ja rivisolua) `<td>`-elementeillä on niihin liittyvä taulukon otsikko. [Lue lisää taulukoiden otsikoista](https://dequeuniversity.com/rules/axe/4.8/td-has-header)."
511
511
  },
512
512
  "core/audits/accessibility/td-has-header.js | failureTitle": {
513
513
  "message": "Suuren `<table>`-elementin `<td>`-elementeillä ei ole otsikoita taulukoissa."
@@ -516,7 +516,7 @@
516
516
  "message": "Suuren `<table>`-elementin `<td>`-elementeillä on vähintään yksi otsikko taulukoissa."
517
517
  },
518
518
  "core/audits/accessibility/td-headers-attr.js | description": {
519
- "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttäjien kokemusta varmistamalla, että `[headers]`-määritettä käyttävät `<td>`-solut viittaavat vain toisiin soluihin samassa taulukossa. [Lue lisää `headers`‐määritteestä](https://dequeuniversity.com/rules/axe/4.7/td-headers-attr)."
519
+ "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelman käyttäjien kokemusta varmistamalla, että `[headers]`-määritettä käyttävät `<td>`-solut viittaavat vain toisiin soluihin samassa taulukossa. [Lue lisää `headers`‐määritteestä](https://dequeuniversity.com/rules/axe/4.8/td-headers-attr)."
520
520
  },
521
521
  "core/audits/accessibility/td-headers-attr.js | failureTitle": {
522
522
  "message": "`[headers]`-määritettä käyttävät `<table>`-elementin solut viittaavat elementtiin (`id`), joka ei ole samassa taulukossa."
@@ -525,7 +525,7 @@
525
525
  "message": "`[headers]`-määritettä käyttävät `<table>`-elementin solut viittaavat soluihin samassa taulukossa"
526
526
  },
527
527
  "core/audits/accessibility/th-has-data-cells.js | description": {
528
- "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelmaa käyttävien kokemusta varmistamalla, että taulukoiden otsikot viittaavat aina johonkin solujoukkoon. [Lue lisää taulukoiden otsikoista](https://dequeuniversity.com/rules/axe/4.7/th-has-data-cells)."
528
+ "message": "Näytönlukuohjelmissa on ominaisuuksia, jotka tekevät taulukoissa siirtymisestä helpompaa. Voit parantaa näytönlukuohjelmaa käyttävien kokemusta varmistamalla, että taulukoiden otsikot viittaavat aina johonkin solujoukkoon. [Lue lisää taulukoiden otsikoista](https://dequeuniversity.com/rules/axe/4.8/th-has-data-cells)."
529
529
  },
530
530
  "core/audits/accessibility/th-has-data-cells.js | failureTitle": {
531
531
  "message": "`<th>`-elementit ja elementit, joissa on `[role=\"columnheader\"/\"rowheader\"]`, eivät sisällä niissä kuvattuja datasoluja"
@@ -534,7 +534,7 @@
534
534
  "message": "`<th>`-elementit ja elementit, joissa on `[role=\"columnheader\"/\"rowheader\"]`, sisältävät niissä kuvatut datasolut"
535
535
  },
536
536
  "core/audits/accessibility/valid-lang.js | description": {
537
- "message": "Kelvollisen [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) ‑määritteen ilmoittaminen elementeille auttaa varmistamaan, että näytönlukuohjelma ääntää tekstin oikein. [Lue lisää `lang`‐määritteen käyttämisestä](https://dequeuniversity.com/rules/axe/4.7/valid-lang)."
537
+ "message": "Kelvollisen [BCP 47 language](https://www.w3.org/International/questions/qa-choosing-language-tags#question) ‑määritteen ilmoittaminen elementeille auttaa varmistamaan, että näytönlukuohjelma ääntää tekstin oikein. [Lue lisää `lang`‐määritteen käyttämisestä](https://dequeuniversity.com/rules/axe/4.8/valid-lang)."
538
538
  },
539
539
  "core/audits/accessibility/valid-lang.js | failureTitle": {
540
540
  "message": "`[lang]`-määritteiden arvot eivät ole kelvollisia"
@@ -543,7 +543,7 @@
543
543
  "message": "`[lang]`-määritteillä on kelvollinen arvo"
544
544
  },
545
545
  "core/audits/accessibility/video-caption.js | description": {
546
- "message": "Kun videossa on tekstitykset, kuurot ja heikkokuuloiset saavat videon tiedot paremmin. [Lue lisää videoiden tekstityksistä](https://dequeuniversity.com/rules/axe/4.7/video-caption)."
546
+ "message": "Kun videossa on tekstitykset, kuurot ja heikkokuuloiset saavat videon tiedot paremmin. [Lue lisää videoiden tekstityksistä](https://dequeuniversity.com/rules/axe/4.8/video-caption)."
547
547
  },
548
548
  "core/audits/accessibility/video-caption.js | failureTitle": {
549
549
  "message": "Elementit (`<video>`) eivät sisällä elementtiä (`<track>`), jossa on `[kind=\"captions\"]`"
@@ -774,7 +774,7 @@
774
774
  "message": "Syntaksi"
775
775
  },
776
776
  "core/audits/csp-xss.js | metaTagMessage": {
777
- "message": "Sivu sisältää <meta>-tagissa määritetyn CSP:n. Harkitse CSP:n siirtämistä HTTP-otsikkoon tai toisen tiukan CSP:n määrittämistä HTTP-otsikkoon."
777
+ "message": "Sivu sisältää `<meta>`-tagissa määritetyn CSP:n. Harkitse CSP:n siirtämistä HTTP-otsikkoon tai toisen tiukan CSP:n määrittämistä HTTP-otsikkoon."
778
778
  },
779
779
  "core/audits/csp-xss.js | noCsp": {
780
780
  "message": "Täytäntöönpanotilasta ei löytynyt CSP:tä"
@@ -1011,7 +1011,7 @@
1011
1011
  "message": "Epäonnistumisen syy"
1012
1012
  },
1013
1013
  "core/audits/installable-manifest.js | description": {
1014
- "message": "Service worker ‑teknologia tuo sovelluksen käyttöön monia progressiivisen web-sovelluksen ominaisuuksia, kuten offline-käytön, aloitusnäytölle lisäämisen ja ilmoitukset. Jos service worker ja manifesti on otettu käyttöön oikein, selaimet voivat aktiivisesti suositella käyttäjille sovelluksesi lisäämistä aloitusnäytölle, mikä voi lisätä aktivoitumisten määrää. [Lue lisää manifestin asennusvaatimuksista](https://developer.chrome.com/docs/lighthouse/pwa/installable-manifest/)."
1014
+ "message": "Service worker ‑teknologia tuo sovelluksen käyttöön monia progressiivisen web-sovelluksen ominaisuuksia, kuten offline-käytön, aloitusnäytölle lisäämisen ja push-ilmoitukset. Jos service worker ja manifesti on otettu käyttöön oikein, selaimet voivat aktiivisesti suositella käyttäjille sovelluksesi lisäämistä aloitusnäytölle, mikä voi lisätä aktivoitumisten määrää. [Lue lisää manifestin asennusvaatimuksista](https://developer.chrome.com/docs/lighthouse/pwa/installable-manifest/)."
1015
1015
  },
1016
1016
  "core/audits/installable-manifest.js | displayValue": {
1017
1017
  "message": "{itemCount,plural, =1{1 syy}other{# syytä}}"
@@ -1026,7 +1026,7 @@
1026
1026
  "message": "Sivu ladataan incognito-ikkunassa"
1027
1027
  },
1028
1028
  "core/audits/installable-manifest.js | manifest-display-not-supported": {
1029
- "message": "Manifestin \"display\"-omaisuuden on oltava \"standalone\", \"fullscreen\" tai \"minimal-ui\""
1029
+ "message": "Manifestin `display`-omaisuuden on oltava `standalone`, `fullscreen` tai `minimal-ui`"
1030
1030
  },
1031
1031
  "core/audits/installable-manifest.js | manifest-display-override-not-supported": {
1032
1032
  "message": "Manifestissä on \"display_override\"-kenttä, ja ensimmäisen tuetun näyttötilan on oltava \"standalone\", \"fullscreen\" tai \"minimal-ui\""
@@ -1038,7 +1038,7 @@
1038
1038
  "message": "Manifestin URL muuttui manifestin noudon aikana"
1039
1039
  },
1040
1040
  "core/audits/installable-manifest.js | manifest-missing-name-or-short-name": {
1041
- "message": "Manifestiin ei sisälly \"name\"- tai \"short_name\"-kenttää"
1041
+ "message": "Manifestissä ei ole `name`- tai `short_name`-kenttää"
1042
1042
  },
1043
1043
  "core/audits/installable-manifest.js | manifest-missing-suitable-icon": {
1044
1044
  "message": "Manifestissa ei ole sopivaa kuvaketta, siinä on oltava vähintään {value0} pikselin kokoinen PNG-, SVG- tai WebP-tiedosto, kokomäärite on lisättävä ja mahdollisen tarkoitusmääritteen on oltava \"any\"."
@@ -1856,6 +1856,9 @@
1856
1856
  "core/gather/gatherers/link-elements.js | headerParseWarning": {
1857
1857
  "message": "Virhe jäsennettäessä `link`-otsikkoa ({error}): `{header}`"
1858
1858
  },
1859
+ "core/gather/timespan-runner.js | warningNavigationDetected": {
1860
+ "message": "Suorituksen aikana havaittiin sivulla navigointi. Aikajanatilan käyttämistä sivulla siirtymisten valvonnassa ei suositella. Navigointitilan avulla voit valvoaa sivulla navigointia ja parantaa kolmannen osapuolen attribuutiota ja pääsäikeen tunnistusta."
1861
+ },
1859
1862
  "core/lib/bf-cache-strings.js | HTTPMethodNotGET": {
1860
1863
  "message": "Vain GET-pyynnön kautta ladattavat sivut voivat käyttää siirtymisvälimuistia."
1861
1864
  },
@@ -2208,25 +2211,25 @@
2208
2211
  "message": "WebXR:ää käyttävät sivut eivät voi tällä hetkellä käyttää siirtymisvälimuistia."
2209
2212
  },
2210
2213
  "core/lib/csp-evaluator.js | allowlistFallback": {
2211
- "message": "Harkitse https:- ja http:-URL-osoitteen kaavojen (joita \"strict-dynamicia\" tukevat selaimet ohittavat) lisäämistä, niin voit saavuttaa taaksepäinyhteensopivuuden vanhempien selainten kanssa."
2214
+ "message": "Harkitse https:- ja http:-URL-mallien (jotka `'strict-dynamic'`-sääntöä tukevat selaimet ohittavat) lisäämistä, niin voit saavuttaa taaksepäinyhteensopivuuden vanhempien selainten kanssa."
2212
2215
  },
2213
2216
  "core/lib/csp-evaluator.js | deprecatedDisownOpener": {
2214
- "message": "CSP3:sta lähtien disown-opener on poistettu käytöstä. Käytä sen sijaan Cross-Origin-Opener-Policy-ylätunnistetta."
2217
+ "message": "`disown-opener` on poistettu käytöstä CSP3:sta lähtien. Käytä sen sijaan Cross-Origin-Opener-Policy-otsikkoa."
2215
2218
  },
2216
2219
  "core/lib/csp-evaluator.js | deprecatedReferrer": {
2217
- "message": "CSP2:sta lähtien referrer on poistettu käytöstä. Käytä sen sijaan Referrer-Policy-ylätunnistetta."
2220
+ "message": "`referrer` on poistettu käytöstä CSP2:sta lähtien. Käytä sen sijaan Referrer-Policy-otsikkoa."
2218
2221
  },
2219
2222
  "core/lib/csp-evaluator.js | deprecatedReflectedXSS": {
2220
- "message": "CSP2:sta lähtien reflected-xss on poistettu käytöstä. Käytä sen sijaan X-XSS-Protection-ylätunnistetta."
2223
+ "message": "`reflected-xss` on poistettu käytöstä CSP2:sta lähtien. Käytä sen sijaan X-XSS-Protection-otsikkoa."
2221
2224
  },
2222
2225
  "core/lib/csp-evaluator.js | missingBaseUri": {
2223
- "message": "Puuttuva base-uri sallii injektoitujen <base>-tagien määrittää kaikkien suhteellisten URL-osoitteiden (esim. skriptien) pohja-URL-osoitteen hyökkääjän hallitsemaan verkkotunnukseen. Sinun kannattaa valita base-urin arvoksi \"none\" tai \"self\"."
2226
+ "message": "Puuttuva `base-uri` sallii injektoitujen `<base>`-tagien määrittää kaikkien suhteellisten URL-osoitteiden (esim. skriptien) perusosan hyökkääjän hallitsemaan verkkotunnukseen. `base-uri` kannattaa asettaa arvoon `'none'` tai `'self'`."
2224
2227
  },
2225
2228
  "core/lib/csp-evaluator.js | missingObjectSrc": {
2226
- "message": "Puuttuva object-src sallii riskialttiita skriptejä suorittavien liitännäisten injektoinnin. Sinun kannattaa määrittää object-src:n arvoksi \"none\", jos mahdollista."
2229
+ "message": "Puuttuva `object-src` sallii riskialttiita skriptejä suorittavien liitännäisten injektoinnin. `object-src` kannattaa asettaa arvoon `'none'`, jos mahdollista."
2227
2230
  },
2228
2231
  "core/lib/csp-evaluator.js | missingScriptSrc": {
2229
- "message": "script-src-sääntö puuttuu. Tämä mahdollistaa vaarallisten skriptien suorittamisen."
2232
+ "message": "Sääntö (`script-src`) puuttuu. Tämä mahdollistaa vaarallisten skriptien suorittamisen."
2230
2233
  },
2231
2234
  "core/lib/csp-evaluator.js | missingSemicolon": {
2232
2235
  "message": "Unohditko puolipisteen? Näyttää siltä, että {keyword} on sääntö eikä avainsana."
@@ -2244,13 +2247,13 @@
2244
2247
  "message": "Vältä tavallisten jokerimerkkien ({keyword}) käyttämistä tässä säännössä. Tavalliset jokerimerkit sallivat skriptit, jotka ovat peräisin riskialttiista verkkotunnuksista."
2245
2248
  },
2246
2249
  "core/lib/csp-evaluator.js | reportToOnly": {
2247
- "message": "Raportointimääränpään voi määrittää vain report-to-säännön kautta. Vain Chromium-pohjaiset selaimet tukevat kyseistä sääntöä, joten on suositeltavaa käyttää myös report-uri-sääntöä."
2250
+ "message": "Raportointimääränpään voi määrittää vain report-to-säännön kautta. Vain Chromium-pohjaiset selaimet tukevat kyseistä sääntöä, joten on suositeltavaa käyttää myös `report-uri`-sääntöä."
2248
2251
  },
2249
2252
  "core/lib/csp-evaluator.js | reportingDestinationMissing": {
2250
2253
  "message": "Raportointimääränpäätä määrittävää CSP:tä ei ole. Tämän takia on hankala säilyttää CSP:tä ajan mittaa ja seurata vaurioita."
2251
2254
  },
2252
2255
  "core/lib/csp-evaluator.js | strictDynamic": {
2253
- "message": "Isännän sallitut luettelot ovat usein ohitettavissa. Sinun kannattaa ehkä käyttää kertakäyttöisiä CSP-nonceja tai ‑hasheja \"strict-dynamic\"-koodin lisäksi."
2256
+ "message": "Isännän sallitut-listat ovat usein ohitettavissa. Jos tarpeen, harkitse sen sijaan kertakäyttöisten CSP-numeroiden tai -tiivisteiden käyttämistä ja lisää `'strict-dynamic'`."
2254
2257
  },
2255
2258
  "core/lib/csp-evaluator.js | unknownDirective": {
2256
2259
  "message": "Tuntematon CSP-sääntö."
@@ -2259,10 +2262,10 @@
2259
2262
  "message": "Näyttää siltä, että {keyword} on virheellinen avainsana."
2260
2263
  },
2261
2264
  "core/lib/csp-evaluator.js | unsafeInline": {
2262
- "message": "\"unsafe-inlinen\" avulla voidaan suorittaa vaarallisia sivun sisäisiä skriptejä ja tapahtumien käsittelijöitä. Harkitse skriptien salliminen yksitellen käyttämällä CSP-nonceja tai ‑hasheja."
2265
+ "message": "`'unsafe-inline'` mahdollistaa vaarallisten sivun sisäisten skriptien ja tapahtumakäsittelijöiden suorittamisen. Harkitse skriptien sallimista yksitellen käyttämällä kertakäyttöisiä CSP-numeroita tai -tiivisteitä."
2263
2266
  },
2264
2267
  "core/lib/csp-evaluator.js | unsafeInlineFallback": {
2265
- "message": "Harkitse \"unsafe-inlinen\" (jonka nonceja/hasheja tukevat selaimet ohittavat) lisäämistä, niin voit saavuttaa taaksepäinyhteensopivuuden vanhempien selainten kanssa."
2268
+ "message": "Jos `'unsafe-inline'` on lisätty (kertakäyttöisiä numeroita/tiivisteitä tukevat selaimet ohittavat sen), voit saavuttaa taaksepäinyhteensopivuuden vanhempien selainten kanssa."
2266
2269
  },
2267
2270
  "core/lib/deprecation-description.js | feature": {
2268
2271
  "message": "Lisätietoa löydät ominaisuuden tilasivulta."