testaro-issues 0.5.1 → 0.5.2
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.
- package/dist/index.cjs +1654 -1654
- package/dist/index.d.cts +1629 -1629
- package/dist/index.d.mts +1629 -1629
- package/dist/index.mjs +1654 -1654
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -33,945 +33,1051 @@ interface EngineRules {
|
|
|
33
33
|
variable: Record<string, RuleEntry>;
|
|
34
34
|
}
|
|
35
35
|
declare const issuesData: {
|
|
36
|
-
readonly
|
|
37
|
-
readonly summary: '
|
|
38
|
-
readonly why: '
|
|
39
|
-
readonly wcag: '';
|
|
40
|
-
readonly weight:
|
|
36
|
+
readonly abbreviationNoTitle: {
|
|
37
|
+
readonly summary: 'abbr title missing';
|
|
38
|
+
readonly why: 'User cannot get help understanding an abbreviation';
|
|
39
|
+
readonly wcag: '3.1.4';
|
|
40
|
+
readonly weight: 4;
|
|
41
41
|
};
|
|
42
|
-
readonly
|
|
43
|
-
readonly summary: 'duplicate
|
|
44
|
-
readonly why: '
|
|
45
|
-
readonly wcag: '
|
|
46
|
-
readonly weight:
|
|
42
|
+
readonly accessKeyDuplicate: {
|
|
43
|
+
readonly summary: 'duplicate access key';
|
|
44
|
+
readonly why: 'Keyboard shortcut does not reliably trigger the intended action';
|
|
45
|
+
readonly wcag: '1.3.1';
|
|
46
|
+
readonly weight: 3;
|
|
47
47
|
};
|
|
48
|
-
readonly
|
|
49
|
-
readonly summary: '
|
|
50
|
-
readonly why: '
|
|
51
|
-
readonly wcag: '
|
|
48
|
+
readonly activeDescendantBadID: {
|
|
49
|
+
readonly summary: 'aria-activedescendant invalid';
|
|
50
|
+
readonly why: 'Keyboard-only user cannot reach an item in a menu';
|
|
51
|
+
readonly wcag: '1.3.1';
|
|
52
52
|
readonly weight: 4;
|
|
53
53
|
};
|
|
54
|
-
readonly
|
|
55
|
-
readonly summary: '
|
|
56
|
-
readonly why: 'User cannot
|
|
57
|
-
readonly wcag: '
|
|
58
|
-
readonly weight:
|
|
54
|
+
readonly activeEmbedding: {
|
|
55
|
+
readonly summary: 'control child of link or button';
|
|
56
|
+
readonly why: 'User cannot reliably choose an item to click or tap';
|
|
57
|
+
readonly wcag: '2.5.5';
|
|
58
|
+
readonly weight: 3;
|
|
59
59
|
};
|
|
60
|
-
readonly
|
|
61
|
-
readonly summary: '
|
|
62
|
-
readonly why: '
|
|
63
|
-
readonly wcag: '
|
|
64
|
-
readonly weight:
|
|
60
|
+
readonly allCaps: {
|
|
61
|
+
readonly summary: 'all-capital text';
|
|
62
|
+
readonly why: 'Text is difficult to read';
|
|
63
|
+
readonly wcag: '3.1.5';
|
|
64
|
+
readonly weight: 1;
|
|
65
65
|
};
|
|
66
|
-
readonly
|
|
67
|
-
readonly summary: '
|
|
68
|
-
readonly why: '
|
|
69
|
-
readonly wcag: '
|
|
70
|
-
readonly weight:
|
|
66
|
+
readonly allItalics: {
|
|
67
|
+
readonly summary: 'all-italic text';
|
|
68
|
+
readonly why: 'Text is difficult to read';
|
|
69
|
+
readonly wcag: '3.1.5';
|
|
70
|
+
readonly weight: 1;
|
|
71
71
|
};
|
|
72
|
-
readonly
|
|
73
|
-
readonly summary: '
|
|
74
|
-
readonly why: '
|
|
75
|
-
readonly wcag: '
|
|
76
|
-
readonly weight:
|
|
72
|
+
readonly animationLong: {
|
|
73
|
+
readonly summary: 'animation long or repetitive';
|
|
74
|
+
readonly why: 'Motion-sensitive user may suffer harm';
|
|
75
|
+
readonly wcag: '2.2.2';
|
|
76
|
+
readonly weight: 3;
|
|
77
77
|
};
|
|
78
|
-
readonly
|
|
79
|
-
readonly summary: '
|
|
80
|
-
readonly why: 'User cannot get help
|
|
78
|
+
readonly appletNoText: {
|
|
79
|
+
readonly summary: 'applet not named';
|
|
80
|
+
readonly why: 'User cannot get help on how to use a custom item';
|
|
81
81
|
readonly wcag: '1.1.1';
|
|
82
82
|
readonly weight: 4;
|
|
83
83
|
};
|
|
84
|
-
readonly
|
|
85
|
-
readonly summary: '
|
|
86
|
-
readonly why: 'User cannot get help on
|
|
87
|
-
readonly wcag: '
|
|
84
|
+
readonly applicationConfusion: {
|
|
85
|
+
readonly summary: 'applications not distinctly named';
|
|
86
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
87
|
+
readonly wcag: '1.3.6';
|
|
88
|
+
readonly weight: 3;
|
|
89
|
+
};
|
|
90
|
+
readonly applicationNoText: {
|
|
91
|
+
readonly summary: 'application not named';
|
|
92
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
93
|
+
readonly wcag: '1.3.6';
|
|
88
94
|
readonly weight: 4;
|
|
89
95
|
};
|
|
90
|
-
readonly
|
|
91
|
-
readonly summary: '
|
|
92
|
-
readonly why: 'User
|
|
93
|
-
readonly wcag: '
|
|
94
|
-
readonly weight:
|
|
96
|
+
readonly applicationRisk: {
|
|
97
|
+
readonly summary: 'dubious application role';
|
|
98
|
+
readonly why: 'User actions may have unexpected effects';
|
|
99
|
+
readonly wcag: '1.3.1';
|
|
100
|
+
readonly weight: 1;
|
|
95
101
|
};
|
|
96
|
-
readonly
|
|
97
|
-
readonly summary: '
|
|
98
|
-
readonly why: '
|
|
102
|
+
readonly ariaAttributeBad: {
|
|
103
|
+
readonly summary: 'aria attribute invalid';
|
|
104
|
+
readonly why: 'Item behavior violates user expectations';
|
|
99
105
|
readonly wcag: '4.1.2';
|
|
100
|
-
readonly weight: 3;
|
|
101
|
-
};
|
|
102
|
-
readonly imageButtonNoText: {
|
|
103
|
-
readonly summary: 'image button not named';
|
|
104
|
-
readonly why: 'User cannot get help understanding an image used as a button';
|
|
105
|
-
readonly wcag: '1.1.1';
|
|
106
106
|
readonly weight: 4;
|
|
107
107
|
};
|
|
108
|
-
readonly
|
|
109
|
-
readonly summary: '
|
|
110
|
-
readonly why: 'User
|
|
111
|
-
readonly wcag: '1.
|
|
112
|
-
readonly weight:
|
|
108
|
+
readonly ariaLabelWrongRisk: {
|
|
109
|
+
readonly summary: 'dubious aria-label';
|
|
110
|
+
readonly why: 'User may fail to get help understanding an item in a form';
|
|
111
|
+
readonly wcag: '1.3.1';
|
|
112
|
+
readonly weight: 1;
|
|
113
113
|
};
|
|
114
|
-
readonly
|
|
115
|
-
readonly summary: '
|
|
116
|
-
readonly why: '
|
|
117
|
-
readonly wcag: '
|
|
114
|
+
readonly ariaMissing: {
|
|
115
|
+
readonly summary: 'aria attribute missing';
|
|
116
|
+
readonly why: 'Item behaves improperly';
|
|
117
|
+
readonly wcag: '4.1.2';
|
|
118
118
|
readonly weight: 4;
|
|
119
119
|
};
|
|
120
|
-
readonly
|
|
121
|
-
readonly summary: '
|
|
122
|
-
readonly why: '
|
|
123
|
-
readonly wcag: '
|
|
124
|
-
readonly weight:
|
|
120
|
+
readonly ariaMissingRisk: {
|
|
121
|
+
readonly summary: 'aria attribute missing?';
|
|
122
|
+
readonly why: 'Item may behave improperly';
|
|
123
|
+
readonly wcag: '4.1.2';
|
|
124
|
+
readonly weight: 2;
|
|
125
125
|
};
|
|
126
|
-
readonly
|
|
127
|
-
readonly summary: '
|
|
128
|
-
readonly why: '
|
|
129
|
-
readonly wcag: '
|
|
130
|
-
readonly weight:
|
|
126
|
+
readonly ariaRedundant: {
|
|
127
|
+
readonly summary: 'aria attribute redundant';
|
|
128
|
+
readonly why: 'Document includes unnecessary code';
|
|
129
|
+
readonly wcag: '4.1.2';
|
|
130
|
+
readonly weight: 1;
|
|
131
131
|
};
|
|
132
|
-
readonly
|
|
133
|
-
readonly summary: '
|
|
134
|
-
readonly why: '
|
|
135
|
-
readonly wcag: '1.
|
|
132
|
+
readonly ariaReferenceBad: {
|
|
133
|
+
readonly summary: 'aria reference invalid';
|
|
134
|
+
readonly why: 'Item behavior violates user expectations';
|
|
135
|
+
readonly wcag: '1.3.1';
|
|
136
136
|
readonly weight: 4;
|
|
137
137
|
};
|
|
138
|
-
readonly
|
|
139
|
-
readonly summary: '
|
|
140
|
-
readonly why: 'User
|
|
141
|
-
readonly wcag: '
|
|
142
|
-
readonly weight:
|
|
138
|
+
readonly ariaVersusHTML: {
|
|
139
|
+
readonly summary: 'aria and HTML attributes have conflicting value';
|
|
140
|
+
readonly why: 'User gets erroneous help with content';
|
|
141
|
+
readonly wcag: '4.1.2';
|
|
142
|
+
readonly weight: 4;
|
|
143
143
|
};
|
|
144
|
-
readonly
|
|
145
|
-
readonly summary: '
|
|
146
|
-
readonly why: 'User
|
|
147
|
-
readonly wcag: '1.
|
|
144
|
+
readonly articleHeadingless: {
|
|
145
|
+
readonly summary: 'article heading missing';
|
|
146
|
+
readonly why: 'User cannot understand the topic of a part of the page';
|
|
147
|
+
readonly wcag: '1.3.1';
|
|
148
148
|
readonly weight: 1;
|
|
149
149
|
};
|
|
150
|
-
readonly
|
|
151
|
-
readonly summary: '
|
|
152
|
-
readonly why: '
|
|
153
|
-
readonly wcag: '1.
|
|
150
|
+
readonly asideConfusion: {
|
|
151
|
+
readonly summary: 'asides not distinctly named';
|
|
152
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
153
|
+
readonly wcag: '1.3.6';
|
|
154
154
|
readonly weight: 3;
|
|
155
155
|
};
|
|
156
|
-
readonly
|
|
157
|
-
readonly summary: '
|
|
158
|
-
readonly why: '
|
|
159
|
-
readonly wcag: '1.
|
|
160
|
-
readonly weight:
|
|
156
|
+
readonly asideNotTop: {
|
|
157
|
+
readonly summary: 'aside child of landmark';
|
|
158
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
159
|
+
readonly wcag: '1.3.6';
|
|
160
|
+
readonly weight: 2;
|
|
161
161
|
};
|
|
162
|
-
readonly
|
|
163
|
-
readonly summary: '
|
|
164
|
-
readonly why: '
|
|
162
|
+
readonly atRuleInvalid: {
|
|
163
|
+
readonly summary: 'invalid at-rule';
|
|
164
|
+
readonly why: 'Document cannot be properly displayed in particular contexts';
|
|
165
|
+
readonly wcag: '4.1';
|
|
166
|
+
readonly weight: 3;
|
|
167
|
+
};
|
|
168
|
+
readonly attributeBad: {
|
|
169
|
+
readonly summary: 'attribute invalid';
|
|
170
|
+
readonly why: 'Item behaves improperly';
|
|
165
171
|
readonly wcag: '1.3.1';
|
|
166
172
|
readonly weight: 4;
|
|
167
173
|
};
|
|
168
|
-
readonly
|
|
169
|
-
readonly summary: '
|
|
170
|
-
readonly why: '
|
|
171
|
-
readonly wcag: '4.1';
|
|
174
|
+
readonly attributeMissing: {
|
|
175
|
+
readonly summary: 'attribute missing';
|
|
176
|
+
readonly why: 'Item behaves improperly';
|
|
177
|
+
readonly wcag: '4.1.2';
|
|
172
178
|
readonly weight: 4;
|
|
173
179
|
};
|
|
174
|
-
readonly
|
|
175
|
-
readonly summary: '
|
|
176
|
-
readonly why: '
|
|
180
|
+
readonly attributeObsolete: {
|
|
181
|
+
readonly summary: 'attribute obsolete';
|
|
182
|
+
readonly why: 'Document includes obsolete code that the browser may fail to process';
|
|
177
183
|
readonly wcag: '4.1';
|
|
178
|
-
readonly weight:
|
|
184
|
+
readonly weight: 3;
|
|
179
185
|
};
|
|
180
|
-
readonly
|
|
181
|
-
readonly summary: '
|
|
182
|
-
readonly why: '
|
|
183
|
-
readonly wcag: '
|
|
186
|
+
readonly attributeValueBad: {
|
|
187
|
+
readonly summary: 'attribute value invalid';
|
|
188
|
+
readonly why: 'Item behaves improperly';
|
|
189
|
+
readonly wcag: '1.3.1';
|
|
184
190
|
readonly weight: 4;
|
|
185
191
|
};
|
|
186
|
-
readonly
|
|
187
|
-
readonly summary: '
|
|
188
|
-
readonly why: '
|
|
189
|
-
readonly wcag: '4.1';
|
|
190
|
-
readonly weight:
|
|
192
|
+
readonly attributeValueRisk: {
|
|
193
|
+
readonly summary: 'attribute value bad?';
|
|
194
|
+
readonly why: 'Item may behave improperly';
|
|
195
|
+
readonly wcag: '4.1.2';
|
|
196
|
+
readonly weight: 1;
|
|
191
197
|
};
|
|
192
|
-
readonly
|
|
193
|
-
readonly summary: '
|
|
194
|
-
readonly why: '
|
|
195
|
-
readonly wcag: '
|
|
198
|
+
readonly audioNoText: {
|
|
199
|
+
readonly summary: 'audio track missing';
|
|
200
|
+
readonly why: 'User cannot get help reading speech as text';
|
|
201
|
+
readonly wcag: '1.2.1';
|
|
196
202
|
readonly weight: 4;
|
|
197
203
|
};
|
|
198
|
-
readonly
|
|
199
|
-
readonly summary: '
|
|
200
|
-
readonly why: '
|
|
201
|
-
readonly wcag: '
|
|
202
|
-
readonly weight:
|
|
204
|
+
readonly audioTextRisk: {
|
|
205
|
+
readonly summary: 'audio not named?';
|
|
206
|
+
readonly why: 'User may be unable to get help reading speech as text';
|
|
207
|
+
readonly wcag: '1.2.1';
|
|
208
|
+
readonly weight: 1;
|
|
203
209
|
};
|
|
204
|
-
readonly
|
|
205
|
-
readonly summary: '
|
|
206
|
-
readonly why: 'User cannot get help
|
|
207
|
-
readonly wcag: '1.
|
|
208
|
-
readonly weight:
|
|
210
|
+
readonly autocompleteBad: {
|
|
211
|
+
readonly summary: 'autocomplete invalid';
|
|
212
|
+
readonly why: 'User cannot get help entering personal information in a form item';
|
|
213
|
+
readonly wcag: '1.3.5';
|
|
214
|
+
readonly weight: 3;
|
|
209
215
|
};
|
|
210
|
-
readonly
|
|
211
|
-
readonly summary: '
|
|
212
|
-
readonly why: '
|
|
213
|
-
readonly wcag: '1.
|
|
214
|
-
readonly weight:
|
|
216
|
+
readonly autocompleteNone: {
|
|
217
|
+
readonly summary: 'autocomplete missing';
|
|
218
|
+
readonly why: 'User cannot get help entering personal information in a form';
|
|
219
|
+
readonly wcag: '1.3.5';
|
|
220
|
+
readonly weight: 4;
|
|
215
221
|
};
|
|
216
|
-
readonly
|
|
217
|
-
readonly summary: '
|
|
218
|
-
readonly why: '
|
|
219
|
-
readonly wcag: '1.
|
|
220
|
-
readonly weight:
|
|
222
|
+
readonly autocompleteRisk: {
|
|
223
|
+
readonly summary: 'autocomplete dubious';
|
|
224
|
+
readonly why: 'User may fail to get help entering personal information in a form item';
|
|
225
|
+
readonly wcag: '1.3.5';
|
|
226
|
+
readonly weight: 1;
|
|
221
227
|
};
|
|
222
|
-
readonly
|
|
223
|
-
readonly summary: '
|
|
224
|
-
readonly why: '
|
|
225
|
-
readonly wcag: '
|
|
228
|
+
readonly autoplay: {
|
|
229
|
+
readonly summary: 'autoplay';
|
|
230
|
+
readonly why: 'Motion- or noise-sensitive user may suffer harm';
|
|
231
|
+
readonly wcag: '1.4.2';
|
|
226
232
|
readonly weight: 2;
|
|
227
233
|
};
|
|
228
|
-
readonly
|
|
229
|
-
readonly summary: '
|
|
230
|
-
readonly why: '
|
|
231
|
-
readonly wcag: '
|
|
234
|
+
readonly autoplayControl: {
|
|
235
|
+
readonly summary: 'autoplay control';
|
|
236
|
+
readonly why: 'Motion- or noise-sensitive user may suffer harm';
|
|
237
|
+
readonly wcag: '1.4.2';
|
|
232
238
|
readonly weight: 2;
|
|
233
239
|
};
|
|
234
|
-
readonly
|
|
235
|
-
readonly summary: '
|
|
236
|
-
readonly why: '
|
|
237
|
-
readonly wcag: '1.
|
|
238
|
-
readonly weight: 1;
|
|
239
|
-
};
|
|
240
|
-
readonly decorativeElementExposed: {
|
|
241
|
-
readonly summary: 'decorative element exposed';
|
|
242
|
-
readonly why: 'Helper alerts a user to an uninformative image';
|
|
243
|
-
readonly wcag: '1.3.1';
|
|
240
|
+
readonly autoplayLong: {
|
|
241
|
+
readonly summary: 'autoplay long';
|
|
242
|
+
readonly why: 'Motion- or noise-sensitive user may suffer harm';
|
|
243
|
+
readonly wcag: '1.4.2';
|
|
244
244
|
readonly weight: 2;
|
|
245
245
|
};
|
|
246
|
-
readonly
|
|
247
|
-
readonly summary: '
|
|
248
|
-
readonly why: '
|
|
249
|
-
readonly wcag: '
|
|
246
|
+
readonly avNoText: {
|
|
247
|
+
readonly summary: 'audio or video caption track missing';
|
|
248
|
+
readonly why: 'User cannot get help reading speech as text';
|
|
249
|
+
readonly wcag: '1.2.1';
|
|
250
250
|
readonly weight: 4;
|
|
251
|
-
readonly max: 1;
|
|
252
251
|
};
|
|
253
|
-
readonly
|
|
254
|
-
readonly summary: '
|
|
255
|
-
readonly why: '
|
|
256
|
-
readonly wcag: '
|
|
252
|
+
readonly backgroundBad: {
|
|
253
|
+
readonly summary: 'CSS background invalid';
|
|
254
|
+
readonly why: 'Background is displayed improperly';
|
|
255
|
+
readonly wcag: '4.1';
|
|
257
256
|
readonly weight: 4;
|
|
258
|
-
readonly max: 1;
|
|
259
257
|
};
|
|
260
|
-
readonly
|
|
261
|
-
readonly summary: '
|
|
262
|
-
readonly why: '
|
|
263
|
-
readonly wcag: '
|
|
258
|
+
readonly backgroundImageBad: {
|
|
259
|
+
readonly summary: 'background image invalid';
|
|
260
|
+
readonly why: 'Background image is displayed improperly';
|
|
261
|
+
readonly wcag: '4.1';
|
|
264
262
|
readonly weight: 4;
|
|
265
263
|
};
|
|
266
|
-
readonly
|
|
267
|
-
readonly summary: '
|
|
268
|
-
readonly why: '
|
|
269
|
-
readonly wcag: '3.
|
|
264
|
+
readonly bannerConfusion: {
|
|
265
|
+
readonly summary: 'banners not distinctly named';
|
|
266
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
267
|
+
readonly wcag: '1.3.6';
|
|
270
268
|
readonly weight: 3;
|
|
271
269
|
};
|
|
272
|
-
readonly
|
|
273
|
-
readonly summary: '
|
|
274
|
-
readonly why: 'User cannot get help
|
|
275
|
-
readonly wcag: '
|
|
276
|
-
readonly weight:
|
|
277
|
-
|
|
278
|
-
readonly objectNoText: {
|
|
279
|
-
readonly summary: 'object not named';
|
|
280
|
-
readonly why: 'User cannot get help explaining a custom item';
|
|
281
|
-
readonly wcag: '1.1.1';
|
|
282
|
-
readonly weight: 4;
|
|
283
|
-
};
|
|
284
|
-
readonly objectTextRisk: {
|
|
285
|
-
readonly summary: 'object dubiously named';
|
|
286
|
-
readonly why: 'Helper may explain a custom item inadequately';
|
|
287
|
-
readonly wcag: '1.1.1';
|
|
288
|
-
readonly weight: 1;
|
|
270
|
+
readonly bannerNot1: {
|
|
271
|
+
readonly summary: 'multiple banners';
|
|
272
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
273
|
+
readonly wcag: '1.3.6';
|
|
274
|
+
readonly weight: 2;
|
|
275
|
+
readonly max: 1;
|
|
289
276
|
};
|
|
290
|
-
readonly
|
|
291
|
-
readonly summary: '
|
|
292
|
-
readonly why: 'User
|
|
293
|
-
readonly wcag: '1.
|
|
294
|
-
readonly weight:
|
|
277
|
+
readonly bannerNotTop: {
|
|
278
|
+
readonly summary: 'banner child of landmark';
|
|
279
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
280
|
+
readonly wcag: '1.3.6';
|
|
281
|
+
readonly weight: 2;
|
|
295
282
|
};
|
|
296
|
-
readonly
|
|
297
|
-
readonly summary: '
|
|
298
|
-
readonly why: '
|
|
299
|
-
readonly wcag: '1.
|
|
283
|
+
readonly baseElementMissing: {
|
|
284
|
+
readonly summary: 'base element missing where required';
|
|
285
|
+
readonly why: 'Browser cannot find a needed external resource';
|
|
286
|
+
readonly wcag: '1.3.1';
|
|
300
287
|
readonly weight: 4;
|
|
301
288
|
};
|
|
302
|
-
readonly
|
|
303
|
-
readonly summary: '
|
|
304
|
-
readonly why: '
|
|
305
|
-
readonly wcag: '
|
|
289
|
+
readonly blink: {
|
|
290
|
+
readonly summary: 'blink element';
|
|
291
|
+
readonly why: 'Motion-sensitive user may suffer harm';
|
|
292
|
+
readonly wcag: '2.2.2';
|
|
306
293
|
readonly weight: 4;
|
|
307
294
|
};
|
|
308
|
-
readonly
|
|
309
|
-
readonly summary: '
|
|
310
|
-
readonly why: '
|
|
311
|
-
readonly wcag: '1.
|
|
295
|
+
readonly blockQuoteShort: {
|
|
296
|
+
readonly summary: 'block quote abnormally short';
|
|
297
|
+
readonly why: 'Content can be made easier to read';
|
|
298
|
+
readonly wcag: '1.4.8';
|
|
299
|
+
readonly weight: 1;
|
|
300
|
+
};
|
|
301
|
+
readonly borderBad: {
|
|
302
|
+
readonly summary: 'CSS border invalid';
|
|
303
|
+
readonly why: 'Border is displayed improperly';
|
|
304
|
+
readonly wcag: '4.1';
|
|
312
305
|
readonly weight: 4;
|
|
313
306
|
};
|
|
314
|
-
readonly
|
|
315
|
-
readonly summary: '
|
|
316
|
-
readonly why: '
|
|
317
|
-
readonly wcag: '2.
|
|
307
|
+
readonly boxInvisibleRisk: {
|
|
308
|
+
readonly summary: 'border or outline invisible?';
|
|
309
|
+
readonly why: 'User cannot perceive the boundary of an item';
|
|
310
|
+
readonly wcag: '2.5.8';
|
|
318
311
|
readonly weight: 1;
|
|
319
312
|
};
|
|
320
|
-
readonly
|
|
321
|
-
readonly summary: '
|
|
322
|
-
readonly why: '
|
|
323
|
-
readonly wcag: '
|
|
324
|
-
readonly weight:
|
|
313
|
+
readonly boxSizeAbsolute: {
|
|
314
|
+
readonly summary: 'box size absolute';
|
|
315
|
+
readonly why: 'User cannot enlarge the content of an item for readability';
|
|
316
|
+
readonly wcag: '1.4.4';
|
|
317
|
+
readonly weight: 3;
|
|
325
318
|
};
|
|
326
|
-
readonly
|
|
327
|
-
readonly summary: '
|
|
328
|
-
readonly why: '
|
|
329
|
-
readonly wcag: '
|
|
319
|
+
readonly browserSupportRisk: {
|
|
320
|
+
readonly summary: 'inputmode attribute';
|
|
321
|
+
readonly why: 'Document may include code that the browser cannot process';
|
|
322
|
+
readonly wcag: '4.1';
|
|
330
323
|
readonly weight: 1;
|
|
331
324
|
};
|
|
332
|
-
readonly
|
|
333
|
-
readonly summary: '
|
|
334
|
-
readonly why: 'User cannot
|
|
335
|
-
readonly wcag: '1.
|
|
325
|
+
readonly buttonAlt: {
|
|
326
|
+
readonly summary: 'button has alt';
|
|
327
|
+
readonly why: 'User cannot get help explaing a button';
|
|
328
|
+
readonly wcag: '4.1.2';
|
|
336
329
|
readonly weight: 4;
|
|
337
330
|
};
|
|
338
|
-
readonly
|
|
339
|
-
readonly summary: '
|
|
340
|
-
readonly why: 'User cannot get help
|
|
341
|
-
readonly wcag: '1.
|
|
342
|
-
readonly weight:
|
|
331
|
+
readonly buttonNoContent: {
|
|
332
|
+
readonly summary: 'button name not visible';
|
|
333
|
+
readonly why: 'User cannot get help explaining a button';
|
|
334
|
+
readonly wcag: '4.1.2';
|
|
335
|
+
readonly weight: 1;
|
|
343
336
|
};
|
|
344
|
-
readonly
|
|
345
|
-
readonly summary: '
|
|
346
|
-
readonly why: 'User cannot get help
|
|
347
|
-
readonly wcag: '1.
|
|
337
|
+
readonly buttonNoText: {
|
|
338
|
+
readonly summary: 'button not named';
|
|
339
|
+
readonly why: 'User cannot get help explaining a button';
|
|
340
|
+
readonly wcag: '4.1.2';
|
|
348
341
|
readonly weight: 4;
|
|
349
342
|
};
|
|
350
|
-
readonly
|
|
351
|
-
readonly summary: '
|
|
352
|
-
readonly why: 'User is
|
|
353
|
-
readonly wcag: '1.
|
|
343
|
+
readonly captcha2: {
|
|
344
|
+
readonly summary: 'captcha2';
|
|
345
|
+
readonly why: 'User is prevented from consuming the page';
|
|
346
|
+
readonly wcag: '1.1.1';
|
|
354
347
|
readonly weight: 1;
|
|
348
|
+
readonly max: 1;
|
|
355
349
|
};
|
|
356
|
-
readonly
|
|
357
|
-
readonly summary: '
|
|
358
|
-
readonly why: 'User may
|
|
350
|
+
readonly cellHeadersAmbiguityRisk: {
|
|
351
|
+
readonly summary: 'cell headers ambiguous?';
|
|
352
|
+
readonly why: 'User may be unable to get help on relationships in a table';
|
|
359
353
|
readonly wcag: '1.3.1';
|
|
360
|
-
readonly weight:
|
|
354
|
+
readonly weight: 2;
|
|
361
355
|
};
|
|
362
|
-
readonly
|
|
363
|
-
readonly summary: '
|
|
364
|
-
readonly why: '
|
|
356
|
+
readonly cellHeadersNotInferrable: {
|
|
357
|
+
readonly summary: 'cell headers not inferrable';
|
|
358
|
+
readonly why: 'User cannot get help on relationships in a table';
|
|
365
359
|
readonly wcag: '1.3.1';
|
|
366
360
|
readonly weight: 4;
|
|
367
361
|
};
|
|
368
|
-
readonly
|
|
369
|
-
readonly summary: '
|
|
370
|
-
readonly why: '
|
|
362
|
+
readonly cellHeadersOutsideTable: {
|
|
363
|
+
readonly summary: 'cell headers outside table';
|
|
364
|
+
readonly why: 'User cannot get help on relationships in a table';
|
|
371
365
|
readonly wcag: '1.3.1';
|
|
372
366
|
readonly weight: 4;
|
|
373
367
|
};
|
|
374
|
-
readonly
|
|
375
|
-
readonly summary: '
|
|
376
|
-
readonly why: '
|
|
377
|
-
readonly wcag: '
|
|
378
|
-
readonly weight:
|
|
368
|
+
readonly characterBad: {
|
|
369
|
+
readonly summary: 'invalid character';
|
|
370
|
+
readonly why: 'Invalid character makes the page behave incorrectly';
|
|
371
|
+
readonly wcag: '4.1';
|
|
372
|
+
readonly weight: 3;
|
|
379
373
|
};
|
|
380
|
-
readonly
|
|
381
|
-
readonly summary: '
|
|
382
|
-
readonly why: 'User may
|
|
383
|
-
readonly wcag: '
|
|
374
|
+
readonly clickOnly: {
|
|
375
|
+
readonly summary: 'name dubiously mouse-specific';
|
|
376
|
+
readonly why: 'User may misunderstand how to activate a link';
|
|
377
|
+
readonly wcag: '2.4.4';
|
|
384
378
|
readonly weight: 1;
|
|
385
379
|
};
|
|
386
|
-
readonly
|
|
387
|
-
readonly summary: '
|
|
388
|
-
readonly why: '
|
|
389
|
-
readonly wcag: '1.
|
|
390
|
-
readonly weight:
|
|
380
|
+
readonly colorNamedRisk: {
|
|
381
|
+
readonly summary: 'color perception required?';
|
|
382
|
+
readonly why: 'Content is impossible to perceive under some conditions';
|
|
383
|
+
readonly wcag: '1.4.1';
|
|
384
|
+
readonly weight: 1;
|
|
391
385
|
};
|
|
392
|
-
readonly
|
|
393
|
-
readonly summary: '
|
|
394
|
-
readonly why: '
|
|
395
|
-
readonly wcag: '1.3.
|
|
386
|
+
readonly complementaryNoText: {
|
|
387
|
+
readonly summary: 'complementary not named';
|
|
388
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
389
|
+
readonly wcag: '1.3.6';
|
|
390
|
+
readonly weight: 1;
|
|
391
|
+
};
|
|
392
|
+
readonly componentNoText: {
|
|
393
|
+
readonly summary: 'interactive component not named';
|
|
394
|
+
readonly why: 'User cannot get help understanding a custom item';
|
|
395
|
+
readonly wcag: '4.1.2';
|
|
396
396
|
readonly weight: 4;
|
|
397
397
|
};
|
|
398
|
-
readonly
|
|
399
|
-
readonly summary: '
|
|
400
|
-
readonly why: 'User
|
|
401
|
-
readonly wcag: '1.3.
|
|
398
|
+
readonly contentBeyondLandmarks: {
|
|
399
|
+
readonly summary: 'content beyond landmarks';
|
|
400
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
401
|
+
readonly wcag: '1.3.6';
|
|
402
402
|
readonly weight: 1;
|
|
403
403
|
};
|
|
404
|
-
readonly
|
|
405
|
-
readonly summary: '
|
|
406
|
-
readonly why: '
|
|
407
|
-
readonly wcag: '
|
|
404
|
+
readonly contentHidden: {
|
|
405
|
+
readonly summary: 'page hidden';
|
|
406
|
+
readonly why: 'User cannot get the page content';
|
|
407
|
+
readonly wcag: '2.4.7';
|
|
408
|
+
readonly weight: 4;
|
|
409
|
+
readonly max: 1;
|
|
410
|
+
};
|
|
411
|
+
readonly contrastAA: {
|
|
412
|
+
readonly summary: 'contrast poor';
|
|
413
|
+
readonly why: 'Content is difficult to understand';
|
|
414
|
+
readonly wcag: '1.4.3';
|
|
415
|
+
readonly weight: 4;
|
|
416
|
+
};
|
|
417
|
+
readonly contrastAAA: {
|
|
418
|
+
readonly summary: 'text contrast improvable';
|
|
419
|
+
readonly why: 'Content is not easy to understand';
|
|
420
|
+
readonly wcag: '1.4.6';
|
|
408
421
|
readonly weight: 1;
|
|
409
422
|
};
|
|
410
|
-
readonly
|
|
411
|
-
readonly summary: '
|
|
412
|
-
readonly why: '
|
|
413
|
-
readonly wcag: '
|
|
423
|
+
readonly contrastRisk: {
|
|
424
|
+
readonly summary: 'text contrast not testable';
|
|
425
|
+
readonly why: 'Text may be difficult to read';
|
|
426
|
+
readonly wcag: '1.4.3';
|
|
414
427
|
readonly weight: 1;
|
|
415
428
|
};
|
|
416
|
-
readonly
|
|
417
|
-
readonly summary: '
|
|
418
|
-
readonly why: 'User cannot get help understanding
|
|
419
|
-
readonly wcag: '
|
|
429
|
+
readonly controlIDInLabelBad: {
|
|
430
|
+
readonly summary: 'label contains control with nonmatching ID';
|
|
431
|
+
readonly why: 'User cannot get help understanding an item in a form';
|
|
432
|
+
readonly wcag: '1.3.1';
|
|
420
433
|
readonly weight: 4;
|
|
421
434
|
};
|
|
422
|
-
readonly
|
|
423
|
-
readonly summary: '
|
|
424
|
-
readonly why: 'User cannot
|
|
425
|
-
readonly wcag: '2.4.
|
|
435
|
+
readonly controlLabelInvisible: {
|
|
436
|
+
readonly summary: 'control label invisible';
|
|
437
|
+
readonly why: 'User cannot understand how to operate a form item';
|
|
438
|
+
readonly wcag: '2.4.6';
|
|
426
439
|
readonly weight: 4;
|
|
427
440
|
};
|
|
428
|
-
readonly
|
|
429
|
-
readonly summary: '
|
|
430
|
-
readonly why: 'User cannot
|
|
431
|
-
readonly wcag: '2.4.4';
|
|
432
|
-
readonly weight: 3;
|
|
433
|
-
};
|
|
434
|
-
readonly linkBrokenRisk: {
|
|
435
|
-
readonly summary: 'link incomplete';
|
|
436
|
-
readonly why: 'User may fail to reach a promised location';
|
|
441
|
+
readonly controlNoText: {
|
|
442
|
+
readonly summary: 'control not named';
|
|
443
|
+
readonly why: 'User cannot get help on how to operate a form item';
|
|
437
444
|
readonly wcag: '1.3.1';
|
|
438
|
-
readonly weight:
|
|
445
|
+
readonly weight: 4;
|
|
439
446
|
};
|
|
440
|
-
readonly
|
|
441
|
-
readonly summary: '
|
|
442
|
-
readonly why: 'User
|
|
443
|
-
readonly wcag: '4
|
|
444
|
-
readonly weight:
|
|
447
|
+
readonly cssBansElementRotate: {
|
|
448
|
+
readonly summary: 'CSS bans element rotation';
|
|
449
|
+
readonly why: 'User must read sideways after rotating a device';
|
|
450
|
+
readonly wcag: '1.3.4';
|
|
451
|
+
readonly weight: 4;
|
|
445
452
|
};
|
|
446
|
-
readonly
|
|
447
|
-
readonly summary: '
|
|
448
|
-
readonly why: 'User
|
|
453
|
+
readonly cssBansPageRotate: {
|
|
454
|
+
readonly summary: 'CSS bans page rotation';
|
|
455
|
+
readonly why: 'User must read sideways after rotating a device';
|
|
456
|
+
readonly wcag: '1.3.4';
|
|
457
|
+
readonly weight: 4;
|
|
458
|
+
};
|
|
459
|
+
readonly cssInvalid: {
|
|
460
|
+
readonly summary: 'CSS invalid';
|
|
461
|
+
readonly why: 'Document cannot be properly displayed';
|
|
449
462
|
readonly wcag: '4.1';
|
|
450
463
|
readonly weight: 3;
|
|
451
464
|
};
|
|
452
|
-
readonly
|
|
453
|
-
readonly summary: '
|
|
454
|
-
readonly why: '
|
|
465
|
+
readonly customKeyboardRisk: {
|
|
466
|
+
readonly summary: 'custom button keyboard-inoperable?';
|
|
467
|
+
readonly why: 'Custom item may prevent a keyboard-only user from operating it';
|
|
468
|
+
readonly wcag: '2.1.1';
|
|
469
|
+
readonly weight: 1;
|
|
470
|
+
};
|
|
471
|
+
readonly datalistRef: {
|
|
472
|
+
readonly summary: 'ambiguous or missing datalist reference';
|
|
473
|
+
readonly why: 'User cannot get help on the permitted input values';
|
|
474
|
+
readonly wcag: '3.3.2';
|
|
475
|
+
readonly weight: 4;
|
|
476
|
+
};
|
|
477
|
+
readonly decorativeAlt: {
|
|
478
|
+
readonly summary: 'decorative image is named';
|
|
479
|
+
readonly why: 'User gets an uninformative image description or misses an informative image';
|
|
480
|
+
readonly wcag: '1.1.1';
|
|
481
|
+
readonly weight: 1;
|
|
482
|
+
};
|
|
483
|
+
readonly decorativeElementExposed: {
|
|
484
|
+
readonly summary: 'decorative element exposed';
|
|
485
|
+
readonly why: 'Helper alerts a user to an uninformative image';
|
|
455
486
|
readonly wcag: '1.3.1';
|
|
487
|
+
readonly weight: 2;
|
|
488
|
+
};
|
|
489
|
+
readonly decorativeImageRisk: {
|
|
490
|
+
readonly summary: 'image dubiously marked decorative';
|
|
491
|
+
readonly why: 'Helper ignores an image that is apparently informative';
|
|
492
|
+
readonly wcag: '1.1.1';
|
|
456
493
|
readonly weight: 1;
|
|
457
494
|
};
|
|
458
|
-
readonly
|
|
459
|
-
readonly summary: '
|
|
460
|
-
readonly why: '
|
|
495
|
+
readonly decorativeTitle: {
|
|
496
|
+
readonly summary: 'decorative element has title';
|
|
497
|
+
readonly why: 'Hovering-produced information is denied to a keyboard-only user';
|
|
461
498
|
readonly wcag: '1.3.1';
|
|
462
499
|
readonly weight: 2;
|
|
463
500
|
};
|
|
464
|
-
readonly
|
|
465
|
-
readonly summary: '
|
|
466
|
-
readonly why: '
|
|
467
|
-
readonly wcag: '
|
|
501
|
+
readonly descendantMissing: {
|
|
502
|
+
readonly summary: 'descendant missing';
|
|
503
|
+
readonly why: 'Keyboard-only user cannot operate a custom tool';
|
|
504
|
+
readonly wcag: '1.3.1';
|
|
468
505
|
readonly weight: 4;
|
|
469
506
|
};
|
|
470
|
-
readonly
|
|
471
|
-
readonly summary: '
|
|
472
|
-
readonly why: 'User cannot get help understanding an
|
|
473
|
-
readonly wcag: '3.1
|
|
507
|
+
readonly descriptionBadID: {
|
|
508
|
+
readonly summary: 'aria-describedby invalid';
|
|
509
|
+
readonly why: 'User cannot get help understanding an item in detail';
|
|
510
|
+
readonly wcag: '1.3.1';
|
|
474
511
|
readonly weight: 4;
|
|
475
512
|
};
|
|
476
|
-
readonly
|
|
477
|
-
readonly summary: '
|
|
478
|
-
readonly why: 'User cannot get help on
|
|
513
|
+
readonly descriptionOrder: {
|
|
514
|
+
readonly summary: 'description list misordered';
|
|
515
|
+
readonly why: 'User cannot get help on the structure of a list';
|
|
479
516
|
readonly wcag: '1.3.1';
|
|
480
|
-
readonly weight:
|
|
517
|
+
readonly weight: 4;
|
|
481
518
|
};
|
|
482
|
-
readonly
|
|
483
|
-
readonly summary: '
|
|
484
|
-
readonly why: 'User cannot get help on
|
|
519
|
+
readonly descriptionOrphan: {
|
|
520
|
+
readonly summary: 'description list orphan';
|
|
521
|
+
readonly why: 'User cannot get help on whether an item is in a list';
|
|
485
522
|
readonly wcag: '1.3.1';
|
|
486
523
|
readonly weight: 4;
|
|
487
524
|
};
|
|
488
|
-
readonly
|
|
489
|
-
readonly summary: 'link
|
|
490
|
-
readonly why: 'Helper
|
|
491
|
-
readonly wcag: '1.
|
|
492
|
-
readonly weight: 2;
|
|
493
|
-
};
|
|
494
|
-
readonly linkTextsSame: {
|
|
495
|
-
readonly summary: 'links named identically';
|
|
496
|
-
readonly why: 'User cannot get help differentiating links';
|
|
497
|
-
readonly wcag: '2.4.4';
|
|
525
|
+
readonly destinationLink: {
|
|
526
|
+
readonly summary: 'link href missing';
|
|
527
|
+
readonly why: 'Helper cannot properly explain a link to a user';
|
|
528
|
+
readonly wcag: '1.3.1';
|
|
498
529
|
readonly weight: 2;
|
|
499
530
|
};
|
|
500
|
-
readonly
|
|
501
|
-
readonly summary: '
|
|
502
|
-
readonly why: '
|
|
503
|
-
readonly wcag: '
|
|
531
|
+
readonly destinationNotURL: {
|
|
532
|
+
readonly summary: 'link destination not URL';
|
|
533
|
+
readonly why: 'Helper cannot properly explain a link to a user';
|
|
534
|
+
readonly wcag: '1.3.1';
|
|
504
535
|
readonly weight: 1;
|
|
505
536
|
};
|
|
506
|
-
readonly
|
|
507
|
-
readonly summary: '
|
|
508
|
-
readonly why: 'User cannot get help
|
|
509
|
-
readonly wcag: '1.
|
|
510
|
-
readonly weight:
|
|
537
|
+
readonly dialogNoText: {
|
|
538
|
+
readonly summary: 'dialog not named';
|
|
539
|
+
readonly why: 'User cannot get help explaining a pop-up window';
|
|
540
|
+
readonly wcag: '4.1.2';
|
|
541
|
+
readonly weight: 4;
|
|
511
542
|
};
|
|
512
|
-
readonly
|
|
513
|
-
readonly summary: '
|
|
514
|
-
readonly why: '
|
|
515
|
-
readonly wcag: '
|
|
516
|
-
readonly weight:
|
|
543
|
+
readonly dirBad: {
|
|
544
|
+
readonly summary: 'dir invalid';
|
|
545
|
+
readonly why: 'Item may behave improperly';
|
|
546
|
+
readonly wcag: '4.1.2';
|
|
547
|
+
readonly weight: 1;
|
|
517
548
|
};
|
|
518
|
-
readonly
|
|
519
|
-
readonly summary: '
|
|
520
|
-
readonly why: '
|
|
521
|
-
readonly wcag: '
|
|
549
|
+
readonly directionRisk: {
|
|
550
|
+
readonly summary: 'dubious direction';
|
|
551
|
+
readonly why: 'Item may behave incorrectly';
|
|
552
|
+
readonly wcag: '1.3.2';
|
|
522
553
|
readonly weight: 1;
|
|
523
554
|
};
|
|
524
|
-
readonly
|
|
525
|
-
readonly summary: '
|
|
526
|
-
readonly why: '
|
|
527
|
-
readonly wcag: '
|
|
555
|
+
readonly divInTable: {
|
|
556
|
+
readonly summary: 'div embedded in table';
|
|
557
|
+
readonly why: 'Blocks of content within a table cell may confuse a user';
|
|
558
|
+
readonly wcag: '1.4';
|
|
528
559
|
readonly weight: 1;
|
|
529
560
|
};
|
|
530
|
-
readonly
|
|
531
|
-
readonly summary: '
|
|
532
|
-
readonly why: 'User
|
|
533
|
-
readonly wcag: '3.
|
|
534
|
-
readonly weight:
|
|
561
|
+
readonly docHeadingNotH1: {
|
|
562
|
+
readonly summary: 'primary heading not h1';
|
|
563
|
+
readonly why: 'User cannot understand the topic of the page';
|
|
564
|
+
readonly wcag: '1.3.1';
|
|
565
|
+
readonly weight: 2;
|
|
535
566
|
readonly max: 1;
|
|
536
567
|
};
|
|
537
|
-
readonly
|
|
538
|
-
readonly summary: '
|
|
539
|
-
readonly why: '
|
|
540
|
-
readonly wcag: '3.
|
|
568
|
+
readonly docTypeBad: {
|
|
569
|
+
readonly summary: 'DOCTYPE invalid';
|
|
570
|
+
readonly why: 'Browser processes the page improperly';
|
|
571
|
+
readonly wcag: '1.3.1';
|
|
541
572
|
readonly weight: 3;
|
|
573
|
+
readonly max: 1;
|
|
542
574
|
};
|
|
543
|
-
readonly
|
|
544
|
-
readonly summary: '
|
|
545
|
-
readonly why: '
|
|
546
|
-
readonly wcag: '3.
|
|
547
|
-
readonly weight:
|
|
575
|
+
readonly docTypeMisplaced: {
|
|
576
|
+
readonly summary: 'DOCTYPE in invalid location';
|
|
577
|
+
readonly why: 'Browser processes the page improperly';
|
|
578
|
+
readonly wcag: '1.3.1';
|
|
579
|
+
readonly weight: 4;
|
|
580
|
+
readonly max: 1;
|
|
548
581
|
};
|
|
549
|
-
readonly
|
|
550
|
-
readonly summary: '
|
|
551
|
-
readonly why: '
|
|
552
|
-
readonly wcag: '3.
|
|
553
|
-
readonly weight:
|
|
582
|
+
readonly docTypeMissing: {
|
|
583
|
+
readonly summary: 'DOCTYPE missing';
|
|
584
|
+
readonly why: 'Browser processes the page improperly';
|
|
585
|
+
readonly wcag: '1.3.1';
|
|
586
|
+
readonly weight: 4;
|
|
587
|
+
readonly max: 1;
|
|
554
588
|
};
|
|
555
|
-
readonly
|
|
556
|
-
readonly summary: '
|
|
557
|
-
readonly why: 'User
|
|
558
|
-
readonly wcag: '
|
|
559
|
-
readonly weight:
|
|
589
|
+
readonly documentConfusion: {
|
|
590
|
+
readonly summary: 'page elements not distinctly named';
|
|
591
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
592
|
+
readonly wcag: '1.3.6';
|
|
593
|
+
readonly weight: 3;
|
|
560
594
|
};
|
|
561
|
-
readonly
|
|
562
|
-
readonly summary: '
|
|
563
|
-
readonly why: '
|
|
564
|
-
readonly wcag: '4.1.
|
|
565
|
-
readonly weight:
|
|
595
|
+
readonly duplicateAttribute: {
|
|
596
|
+
readonly summary: 'duplicate attribute';
|
|
597
|
+
readonly why: 'Browser processes the page improperly';
|
|
598
|
+
readonly wcag: '4.1.1';
|
|
599
|
+
readonly weight: 2;
|
|
566
600
|
};
|
|
567
|
-
readonly
|
|
568
|
-
readonly summary: '
|
|
569
|
-
readonly why: 'User
|
|
570
|
-
readonly wcag: '4.1.
|
|
601
|
+
readonly duplicateID: {
|
|
602
|
+
readonly summary: 'ID not unique';
|
|
603
|
+
readonly why: 'User may be pointed to the wrong item';
|
|
604
|
+
readonly wcag: '4.1.1';
|
|
571
605
|
readonly weight: 4;
|
|
572
606
|
};
|
|
573
|
-
readonly
|
|
574
|
-
readonly summary: '
|
|
575
|
-
readonly why: 'User cannot get help
|
|
576
|
-
readonly wcag: '
|
|
577
|
-
readonly weight:
|
|
607
|
+
readonly editableHow: {
|
|
608
|
+
readonly summary: 'contenteditable element incomplete';
|
|
609
|
+
readonly why: 'User cannot get help on how to edit editable content';
|
|
610
|
+
readonly wcag: '1.3.1';
|
|
611
|
+
readonly weight: 3;
|
|
578
612
|
};
|
|
579
|
-
readonly
|
|
580
|
-
readonly summary: '
|
|
581
|
-
readonly why: 'User cannot
|
|
613
|
+
readonly elementBad: {
|
|
614
|
+
readonly summary: 'nonexistent element';
|
|
615
|
+
readonly why: 'User cannot understand the content';
|
|
582
616
|
readonly wcag: '4.1.2';
|
|
583
617
|
readonly weight: 4;
|
|
584
618
|
};
|
|
585
|
-
readonly
|
|
586
|
-
readonly summary: '
|
|
587
|
-
readonly why: '
|
|
588
|
-
readonly wcag: '4.1.
|
|
589
|
-
readonly weight:
|
|
619
|
+
readonly elementClosure: {
|
|
620
|
+
readonly summary: 'element closure invalid';
|
|
621
|
+
readonly why: 'Document contains invalid code';
|
|
622
|
+
readonly wcag: '4.1.1';
|
|
623
|
+
readonly weight: 3;
|
|
590
624
|
};
|
|
591
|
-
readonly
|
|
592
|
-
readonly summary: '
|
|
593
|
-
readonly why: '
|
|
594
|
-
readonly wcag: '
|
|
625
|
+
readonly elementLanguageBad: {
|
|
626
|
+
readonly summary: 'element language invalid';
|
|
627
|
+
readonly why: 'Speaking helper may mispronounce the text of an item';
|
|
628
|
+
readonly wcag: '3.1.2';
|
|
595
629
|
readonly weight: 4;
|
|
596
630
|
};
|
|
597
|
-
readonly
|
|
598
|
-
readonly summary: '
|
|
599
|
-
readonly why: '
|
|
600
|
-
readonly wcag: '
|
|
631
|
+
readonly elementObsolete: {
|
|
632
|
+
readonly summary: 'element obsolete';
|
|
633
|
+
readonly why: 'Document includes obsolete code that the browser may fail to process';
|
|
634
|
+
readonly wcag: '4.1';
|
|
635
|
+
readonly weight: 3;
|
|
636
|
+
};
|
|
637
|
+
readonly emailLinkBad: {
|
|
638
|
+
readonly summary: 'Microsoft will bounce email from link';
|
|
639
|
+
readonly why: 'User cannot send email';
|
|
640
|
+
readonly wcag: '2.4.4';
|
|
601
641
|
readonly weight: 4;
|
|
602
642
|
};
|
|
603
|
-
readonly
|
|
604
|
-
readonly summary: '
|
|
605
|
-
readonly why: '
|
|
606
|
-
readonly wcag: '1.3
|
|
643
|
+
readonly encodingBad: {
|
|
644
|
+
readonly summary: 'text not Unicode-compliant';
|
|
645
|
+
readonly why: 'User cannot read all of the text';
|
|
646
|
+
readonly wcag: '3.1.3';
|
|
607
647
|
readonly weight: 4;
|
|
608
648
|
};
|
|
609
|
-
readonly
|
|
610
|
-
readonly summary: '
|
|
611
|
-
readonly why: 'User cannot
|
|
612
|
-
readonly wcag: '
|
|
649
|
+
readonly encodingMisdeclared: {
|
|
650
|
+
readonly summary: 'text encoding wrongly declared';
|
|
651
|
+
readonly why: 'User cannot read all of the text';
|
|
652
|
+
readonly wcag: '3.1.3';
|
|
613
653
|
readonly weight: 4;
|
|
654
|
+
readonly max: 1;
|
|
614
655
|
};
|
|
615
|
-
readonly
|
|
616
|
-
readonly summary: '
|
|
617
|
-
readonly why: 'User cannot
|
|
618
|
-
readonly wcag: '
|
|
656
|
+
readonly encodingPrivate: {
|
|
657
|
+
readonly summary: 'text in Private Use Area';
|
|
658
|
+
readonly why: 'User cannot read all of the text';
|
|
659
|
+
readonly wcag: '3.1.3';
|
|
619
660
|
readonly weight: 4;
|
|
661
|
+
readonly max: 1;
|
|
620
662
|
};
|
|
621
|
-
readonly
|
|
622
|
-
readonly summary: '
|
|
623
|
-
readonly why: 'User
|
|
624
|
-
readonly wcag: '1
|
|
663
|
+
readonly entityBad: {
|
|
664
|
+
readonly summary: 'named character reference invalid';
|
|
665
|
+
readonly why: 'User may be unable to read all the page text';
|
|
666
|
+
readonly wcag: '4.1';
|
|
625
667
|
readonly weight: 4;
|
|
626
668
|
};
|
|
627
|
-
readonly
|
|
628
|
-
readonly summary: '
|
|
629
|
-
readonly why: 'User
|
|
630
|
-
readonly wcag: '
|
|
669
|
+
readonly errorReferenceBad: {
|
|
670
|
+
readonly summary: 'error reference invalid';
|
|
671
|
+
readonly why: 'User cannot correct a form error';
|
|
672
|
+
readonly wcag: '3.3.1';
|
|
631
673
|
readonly weight: 4;
|
|
632
674
|
};
|
|
633
|
-
readonly
|
|
634
|
-
readonly summary: '
|
|
635
|
-
readonly why: '
|
|
636
|
-
readonly wcag: '1.
|
|
675
|
+
readonly eventKeyboardRisk: {
|
|
676
|
+
readonly summary: 'event not keyboard-triggerable?';
|
|
677
|
+
readonly why: 'Keyboard-only user may be unable to perform an action';
|
|
678
|
+
readonly wcag: '2.1.1';
|
|
637
679
|
readonly weight: 1;
|
|
638
|
-
readonly max: 1;
|
|
639
680
|
};
|
|
640
|
-
readonly
|
|
641
|
-
readonly summary: '
|
|
642
|
-
readonly why: '
|
|
643
|
-
readonly wcag: '
|
|
681
|
+
readonly fatalError: {
|
|
682
|
+
readonly summary: 'fatal error';
|
|
683
|
+
readonly why: 'Document prevents testing for accessibility';
|
|
684
|
+
readonly wcag: '4.1';
|
|
644
685
|
readonly weight: 4;
|
|
645
686
|
readonly max: 1;
|
|
646
687
|
};
|
|
647
|
-
readonly
|
|
648
|
-
readonly summary: '
|
|
649
|
-
readonly why: 'User cannot
|
|
650
|
-
readonly wcag: '1.
|
|
688
|
+
readonly fieldSetMissing: {
|
|
689
|
+
readonly summary: 'fieldset missing';
|
|
690
|
+
readonly why: 'User cannot get help recognizing a group of related form items';
|
|
691
|
+
readonly wcag: '1.3.1';
|
|
651
692
|
readonly weight: 2;
|
|
652
693
|
};
|
|
653
|
-
readonly
|
|
654
|
-
readonly summary: '
|
|
655
|
-
readonly why: '
|
|
656
|
-
readonly wcag: '1.
|
|
657
|
-
readonly weight:
|
|
658
|
-
};
|
|
659
|
-
readonly horizontalSpacingFrozen: {
|
|
660
|
-
readonly summary: 'horizontal text spacing frozen';
|
|
661
|
-
readonly why: 'User cannot adjust the horizontal text spacing for readability';
|
|
662
|
-
readonly wcag: '1.4.12';
|
|
663
|
-
readonly weight: 4;
|
|
694
|
+
readonly fieldSetRisk: {
|
|
695
|
+
readonly summary: 'fieldset missing?';
|
|
696
|
+
readonly why: 'User may be unable to get help recognizing a group of related form items';
|
|
697
|
+
readonly wcag: '1.3.1';
|
|
698
|
+
readonly weight: 1;
|
|
664
699
|
};
|
|
665
|
-
readonly
|
|
666
|
-
readonly summary: '
|
|
667
|
-
readonly why: 'User cannot
|
|
668
|
-
readonly wcag: '1.
|
|
700
|
+
readonly figureNoText: {
|
|
701
|
+
readonly summary: 'figure not named';
|
|
702
|
+
readonly why: 'User cannot get help on the topic of a figure';
|
|
703
|
+
readonly wcag: '1.1.1';
|
|
669
704
|
readonly weight: 4;
|
|
670
705
|
};
|
|
671
|
-
readonly
|
|
672
|
-
readonly summary: '
|
|
673
|
-
readonly why: '
|
|
674
|
-
readonly wcag: '
|
|
675
|
-
readonly weight:
|
|
676
|
-
|
|
677
|
-
readonly lineHeightLow: {
|
|
678
|
-
readonly summary: 'line height low';
|
|
679
|
-
readonly why: 'Text is difficult to read';
|
|
680
|
-
readonly wcag: '1.4.8';
|
|
681
|
-
readonly weight: 2;
|
|
706
|
+
readonly flash: {
|
|
707
|
+
readonly summary: 'flash content';
|
|
708
|
+
readonly why: 'Document includes code that may not work and may jeopardize user security';
|
|
709
|
+
readonly wcag: '4.1';
|
|
710
|
+
readonly weight: 1;
|
|
711
|
+
readonly max: 1;
|
|
682
712
|
};
|
|
683
|
-
readonly
|
|
684
|
-
readonly summary: '
|
|
685
|
-
readonly why: '
|
|
686
|
-
readonly wcag: '
|
|
713
|
+
readonly flexBad: {
|
|
714
|
+
readonly summary: 'CSS flex invalid';
|
|
715
|
+
readonly why: 'Content is displayed improperly';
|
|
716
|
+
readonly wcag: '4.1';
|
|
687
717
|
readonly weight: 4;
|
|
688
718
|
};
|
|
689
|
-
readonly
|
|
690
|
-
readonly summary: '
|
|
691
|
-
readonly why: '
|
|
692
|
-
readonly wcag: '1.
|
|
719
|
+
readonly focusableDescendants: {
|
|
720
|
+
readonly summary: 'presentational child focusable';
|
|
721
|
+
readonly why: 'Keyboard-only user cannot navigate properly to the operable items';
|
|
722
|
+
readonly wcag: '4.1.2';
|
|
693
723
|
readonly weight: 4;
|
|
694
724
|
};
|
|
695
|
-
readonly
|
|
696
|
-
readonly summary: '
|
|
697
|
-
readonly why: '
|
|
698
|
-
readonly wcag: '1.
|
|
699
|
-
readonly weight:
|
|
725
|
+
readonly focusableHidden: {
|
|
726
|
+
readonly summary: 'focusable element hidden';
|
|
727
|
+
readonly why: 'Keyboard-only user cannot navigate properly to the operable items';
|
|
728
|
+
readonly wcag: '4.1.2';
|
|
729
|
+
readonly weight: 4;
|
|
700
730
|
};
|
|
701
|
-
readonly
|
|
702
|
-
readonly summary: '
|
|
703
|
-
readonly why: '
|
|
704
|
-
readonly wcag: '1.
|
|
731
|
+
readonly focusableOperable: {
|
|
732
|
+
readonly summary: 'element focusability and operability conflict';
|
|
733
|
+
readonly why: 'Keyboard-only user cannot operate an item';
|
|
734
|
+
readonly wcag: '2.1.1';
|
|
705
735
|
readonly weight: 3;
|
|
706
736
|
};
|
|
707
|
-
readonly
|
|
708
|
-
readonly summary: '
|
|
709
|
-
readonly why: '
|
|
737
|
+
readonly focusableRole: {
|
|
738
|
+
readonly summary: 'focusable element not active';
|
|
739
|
+
readonly why: 'Keyboard-only user cannot navigate properly to the operable items';
|
|
710
740
|
readonly wcag: '4.1.2';
|
|
741
|
+
readonly weight: 3;
|
|
742
|
+
};
|
|
743
|
+
readonly focusDiscrepancy: {
|
|
744
|
+
readonly summary: 'Tab-focusable elements wrong';
|
|
745
|
+
readonly why: 'Item selections by a keyboard-only user are useless or impossible';
|
|
746
|
+
readonly wcag: '2.1.1';
|
|
711
747
|
readonly weight: 4;
|
|
712
748
|
};
|
|
713
|
-
readonly
|
|
714
|
-
readonly summary: '
|
|
715
|
-
readonly why: '
|
|
716
|
-
readonly wcag: '1.
|
|
717
|
-
readonly weight:
|
|
749
|
+
readonly focusedAway: {
|
|
750
|
+
readonly summary: 'element beyond display when focused';
|
|
751
|
+
readonly why: 'Keyboard-only user cannot navigate properly to the operable items';
|
|
752
|
+
readonly wcag: '1.4.10';
|
|
753
|
+
readonly weight: 3;
|
|
718
754
|
};
|
|
719
|
-
readonly
|
|
720
|
-
readonly summary: '
|
|
721
|
-
readonly why: '
|
|
722
|
-
readonly wcag: '
|
|
755
|
+
readonly focusIndicationBad: {
|
|
756
|
+
readonly summary: 'focus indication poor';
|
|
757
|
+
readonly why: 'Keyboard-only user cannot choose an item to operate';
|
|
758
|
+
readonly wcag: '2.4.7';
|
|
723
759
|
readonly weight: 4;
|
|
724
760
|
};
|
|
725
|
-
readonly
|
|
726
|
-
readonly summary: '
|
|
727
|
-
readonly why: '
|
|
728
|
-
readonly wcag: '
|
|
729
|
-
readonly weight:
|
|
761
|
+
readonly focusIndicationImprovable: {
|
|
762
|
+
readonly summary: 'focus indication improvable';
|
|
763
|
+
readonly why: 'Keyboard-only user cannot easily choose an item to operate';
|
|
764
|
+
readonly wcag: '2.4.7';
|
|
765
|
+
readonly weight: 2;
|
|
730
766
|
};
|
|
731
|
-
readonly
|
|
732
|
-
readonly summary: '
|
|
733
|
-
readonly why: '
|
|
734
|
-
readonly wcag: '
|
|
735
|
-
readonly weight:
|
|
767
|
+
readonly focusIndicationRisk: {
|
|
768
|
+
readonly summary: 'focus indication poor?';
|
|
769
|
+
readonly why: 'Keyboard-only user cannot choose an item to operate';
|
|
770
|
+
readonly wcag: '2.4.7';
|
|
771
|
+
readonly weight: 1;
|
|
736
772
|
};
|
|
737
|
-
readonly
|
|
738
|
-
readonly summary: '
|
|
739
|
-
readonly why: '
|
|
740
|
-
readonly wcag: '4.
|
|
773
|
+
readonly fontSizeAbsolute: {
|
|
774
|
+
readonly summary: 'font size absolute';
|
|
775
|
+
readonly why: 'User cannot adjust the text size for readability';
|
|
776
|
+
readonly wcag: '1.4.4';
|
|
777
|
+
readonly weight: 2;
|
|
778
|
+
};
|
|
779
|
+
readonly fontSmall: {
|
|
780
|
+
readonly summary: 'font small';
|
|
781
|
+
readonly why: 'Text is difficult to read';
|
|
782
|
+
readonly wcag: '1.4';
|
|
741
783
|
readonly weight: 3;
|
|
742
784
|
};
|
|
743
|
-
readonly
|
|
744
|
-
readonly summary: '
|
|
745
|
-
readonly why: '
|
|
746
|
-
readonly wcag: '
|
|
785
|
+
readonly footerConfusion: {
|
|
786
|
+
readonly summary: 'contentinfos not distinctly named';
|
|
787
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
788
|
+
readonly wcag: '1.3.6';
|
|
747
789
|
readonly weight: 3;
|
|
748
790
|
};
|
|
749
|
-
readonly
|
|
750
|
-
readonly summary: '
|
|
751
|
-
readonly why: '
|
|
752
|
-
readonly wcag: '
|
|
791
|
+
readonly footerNot1: {
|
|
792
|
+
readonly summary: 'multiple contentinfos';
|
|
793
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
794
|
+
readonly wcag: '1.3.6';
|
|
795
|
+
readonly weight: 2;
|
|
796
|
+
readonly max: 1;
|
|
797
|
+
};
|
|
798
|
+
readonly footerNotTop: {
|
|
799
|
+
readonly summary: 'footer child of landmark';
|
|
800
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
801
|
+
readonly wcag: '1.3.6';
|
|
802
|
+
readonly weight: 1;
|
|
803
|
+
};
|
|
804
|
+
readonly formConfusion: {
|
|
805
|
+
readonly summary: 'forms not distinctly named';
|
|
806
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
807
|
+
readonly wcag: '1.3.6';
|
|
753
808
|
readonly weight: 3;
|
|
754
809
|
};
|
|
755
|
-
readonly
|
|
756
|
-
readonly summary: '
|
|
757
|
-
readonly why: '
|
|
810
|
+
readonly formInTable: {
|
|
811
|
+
readonly summary: 'form embedded in table';
|
|
812
|
+
readonly why: 'Navigation in a form may confuse a keyboard-only user';
|
|
813
|
+
readonly wcag: '2.1.1';
|
|
814
|
+
readonly weight: 1;
|
|
815
|
+
};
|
|
816
|
+
readonly formsNested: {
|
|
817
|
+
readonly summary: 'form nested in another form';
|
|
818
|
+
readonly why: 'User cannot predict effect of actions in a form';
|
|
758
819
|
readonly wcag: '4.1';
|
|
759
820
|
readonly weight: 4;
|
|
760
821
|
};
|
|
761
|
-
readonly
|
|
762
|
-
readonly summary: '
|
|
763
|
-
readonly why: '
|
|
822
|
+
readonly formSurpriseRisk: {
|
|
823
|
+
readonly summary: 'form interaction changes content?';
|
|
824
|
+
readonly why: 'User experiences unexpected page change when using a form';
|
|
825
|
+
readonly wcag: '3.2.5';
|
|
826
|
+
readonly weight: 1;
|
|
827
|
+
};
|
|
828
|
+
readonly fragmentaryNoticeRisk: {
|
|
829
|
+
readonly summary: 'assertive region not atomic';
|
|
830
|
+
readonly why: 'User may be unable to get help on what content has changed';
|
|
831
|
+
readonly wcag: '4.1.3';
|
|
832
|
+
readonly weight: 2;
|
|
833
|
+
};
|
|
834
|
+
readonly frameSandboxRisk: {
|
|
835
|
+
readonly summary: 'iframe sandbox attributes risky';
|
|
836
|
+
readonly why: 'Document may be unsafe to use';
|
|
764
837
|
readonly wcag: '4.1';
|
|
765
|
-
readonly weight:
|
|
838
|
+
readonly weight: 2;
|
|
766
839
|
};
|
|
767
|
-
readonly
|
|
768
|
-
readonly summary: '
|
|
769
|
-
readonly why: '
|
|
840
|
+
readonly gapBad: {
|
|
841
|
+
readonly summary: 'CSS gap invalid';
|
|
842
|
+
readonly why: 'Content is displayed improperly';
|
|
770
843
|
readonly wcag: '4.1';
|
|
771
844
|
readonly weight: 4;
|
|
772
845
|
};
|
|
773
|
-
readonly
|
|
774
|
-
readonly summary: '
|
|
775
|
-
readonly why: '
|
|
776
|
-
readonly wcag: '1.4';
|
|
777
|
-
readonly weight: 3;
|
|
778
|
-
};
|
|
779
|
-
readonly scriptNotDeferrable: {
|
|
780
|
-
readonly summary: 'script element invalidly deferred';
|
|
781
|
-
readonly why: 'Browser processes the page improperly';
|
|
846
|
+
readonly governedBadID: {
|
|
847
|
+
readonly summary: 'aria-controls or -owns invalid';
|
|
848
|
+
readonly why: 'Keyboard-only user cannot reach an item';
|
|
782
849
|
readonly wcag: '1.3.1';
|
|
783
850
|
readonly weight: 4;
|
|
784
851
|
};
|
|
785
|
-
readonly
|
|
786
|
-
readonly summary: '
|
|
787
|
-
readonly why: '
|
|
788
|
-
readonly wcag: '4.1';
|
|
852
|
+
readonly groupName: {
|
|
853
|
+
readonly summary: 'group not named';
|
|
854
|
+
readonly why: 'User cannot get help on the topic of a group of form items';
|
|
855
|
+
readonly wcag: '4.1.2';
|
|
789
856
|
readonly weight: 3;
|
|
790
857
|
};
|
|
791
|
-
readonly
|
|
792
|
-
readonly summary: '
|
|
793
|
-
readonly why: '
|
|
858
|
+
readonly h1Not1: {
|
|
859
|
+
readonly summary: 'not exactly 1 h1 heading';
|
|
860
|
+
readonly why: 'User cannot understand the topic of the page';
|
|
794
861
|
readonly wcag: '1.3.1';
|
|
795
|
-
readonly weight:
|
|
862
|
+
readonly weight: 2;
|
|
863
|
+
readonly max: 1;
|
|
796
864
|
};
|
|
797
|
-
readonly
|
|
798
|
-
readonly summary: '
|
|
799
|
-
readonly why: '
|
|
865
|
+
readonly h1Not1st: {
|
|
866
|
+
readonly summary: 'h1 not 1st heading';
|
|
867
|
+
readonly why: 'User cannot understand the topic of the page';
|
|
800
868
|
readonly wcag: '1.3.1';
|
|
801
|
-
readonly weight:
|
|
869
|
+
readonly weight: 3;
|
|
870
|
+
readonly max: 1;
|
|
802
871
|
};
|
|
803
|
-
readonly
|
|
804
|
-
readonly summary: '
|
|
805
|
-
readonly why: '
|
|
872
|
+
readonly haspopupBad: {
|
|
873
|
+
readonly summary: 'aria-haspopup invalid';
|
|
874
|
+
readonly why: 'Keyboard-only user cannot operate a custom tool';
|
|
806
875
|
readonly wcag: '1.3.1';
|
|
807
876
|
readonly weight: 4;
|
|
808
877
|
};
|
|
809
|
-
readonly
|
|
810
|
-
readonly summary: '
|
|
811
|
-
readonly why: '
|
|
812
|
-
readonly wcag: '1.
|
|
813
|
-
readonly weight:
|
|
878
|
+
readonly headElementsBad: {
|
|
879
|
+
readonly summary: 'element in head invalid';
|
|
880
|
+
readonly why: 'Browser processes the page improperly';
|
|
881
|
+
readonly wcag: '4.1.1';
|
|
882
|
+
readonly weight: 3;
|
|
814
883
|
};
|
|
815
|
-
readonly
|
|
816
|
-
readonly summary: '
|
|
817
|
-
readonly why: 'User cannot
|
|
818
|
-
readonly wcag: '
|
|
819
|
-
readonly weight:
|
|
884
|
+
readonly headingConfusion: {
|
|
885
|
+
readonly summary: 'heading names repeated';
|
|
886
|
+
readonly why: 'User cannot differentiate parts of the page';
|
|
887
|
+
readonly wcag: '1.3.1';
|
|
888
|
+
readonly weight: 2;
|
|
820
889
|
};
|
|
821
|
-
readonly
|
|
822
|
-
readonly summary: '
|
|
823
|
-
readonly why: 'User cannot get help on the
|
|
824
|
-
readonly wcag: '4.
|
|
890
|
+
readonly headingEmpty: {
|
|
891
|
+
readonly summary: 'heading empty';
|
|
892
|
+
readonly why: 'User cannot get help on the topic of a part of the page';
|
|
893
|
+
readonly wcag: '2.4.6';
|
|
825
894
|
readonly weight: 3;
|
|
826
895
|
};
|
|
827
|
-
readonly
|
|
828
|
-
readonly summary: '
|
|
829
|
-
readonly why: 'User
|
|
830
|
-
readonly wcag: '
|
|
896
|
+
readonly headingImageNoText: {
|
|
897
|
+
readonly summary: 'heading image not named';
|
|
898
|
+
readonly why: 'User cannot get help understanding an image used as a heading';
|
|
899
|
+
readonly wcag: '1.1.1';
|
|
831
900
|
readonly weight: 4;
|
|
832
901
|
};
|
|
833
|
-
readonly
|
|
834
|
-
readonly summary: '
|
|
835
|
-
readonly why: '
|
|
836
|
-
readonly wcag: '
|
|
837
|
-
readonly weight: 1;
|
|
838
|
-
};
|
|
839
|
-
readonly roleConfusion: {
|
|
840
|
-
readonly summary: 'role assigned instead of implicit';
|
|
841
|
-
readonly why: 'User may misunderstand the purpose of an item';
|
|
842
|
-
readonly wcag: '4.1.2';
|
|
843
|
-
readonly weight: 1;
|
|
844
|
-
};
|
|
845
|
-
readonly dirBad: {
|
|
846
|
-
readonly summary: 'dir invalid';
|
|
847
|
-
readonly why: 'Item may behave improperly';
|
|
848
|
-
readonly wcag: '4.1.2';
|
|
902
|
+
readonly headingLength: {
|
|
903
|
+
readonly summary: 'heading abnormally long';
|
|
904
|
+
readonly why: 'User has difficulty understanding the topic of a part of the page';
|
|
905
|
+
readonly wcag: '1.3.1';
|
|
849
906
|
readonly weight: 1;
|
|
850
907
|
};
|
|
851
|
-
readonly
|
|
852
|
-
readonly summary: '
|
|
853
|
-
readonly why: '
|
|
908
|
+
readonly headingLevelSkip: {
|
|
909
|
+
readonly summary: 'heading level skipped';
|
|
910
|
+
readonly why: 'Helper misdescribes the page';
|
|
854
911
|
readonly wcag: '1.3.1';
|
|
855
|
-
readonly weight:
|
|
912
|
+
readonly weight: 2;
|
|
856
913
|
};
|
|
857
|
-
readonly
|
|
858
|
-
readonly summary: '
|
|
859
|
-
readonly why: '
|
|
914
|
+
readonly headingMisuseRisk: {
|
|
915
|
+
readonly summary: 'heading used for styling?';
|
|
916
|
+
readonly why: 'User cannot understand the page structure';
|
|
860
917
|
readonly wcag: '1.3.1';
|
|
861
|
-
readonly weight:
|
|
918
|
+
readonly weight: 2;
|
|
862
919
|
};
|
|
863
|
-
readonly
|
|
864
|
-
readonly summary: '
|
|
865
|
-
readonly why: '
|
|
920
|
+
readonly headingNone: {
|
|
921
|
+
readonly summary: 'headings missing';
|
|
922
|
+
readonly why: 'User cannot survey parts of the page';
|
|
866
923
|
readonly wcag: '1.3.1';
|
|
867
|
-
readonly weight:
|
|
924
|
+
readonly weight: 3;
|
|
925
|
+
readonly max: 1;
|
|
868
926
|
};
|
|
869
|
-
readonly
|
|
870
|
-
readonly summary: '
|
|
871
|
-
readonly why: '
|
|
872
|
-
readonly wcag: '
|
|
873
|
-
readonly weight:
|
|
927
|
+
readonly headingOfNothing: {
|
|
928
|
+
readonly summary: 'heading heads nothing';
|
|
929
|
+
readonly why: 'Helper misdescribes the page';
|
|
930
|
+
readonly wcag: '1.3.1';
|
|
931
|
+
readonly weight: 2;
|
|
874
932
|
};
|
|
875
|
-
readonly
|
|
876
|
-
readonly summary: '
|
|
877
|
-
readonly why: '
|
|
933
|
+
readonly headingsEmbedded: {
|
|
934
|
+
readonly summary: 'heading within a heading';
|
|
935
|
+
readonly why: 'User cannot understand the page organization';
|
|
878
936
|
readonly wcag: '4.1.2';
|
|
879
937
|
readonly weight: 4;
|
|
880
938
|
};
|
|
881
|
-
readonly
|
|
882
|
-
readonly summary: '
|
|
883
|
-
readonly why: '
|
|
884
|
-
readonly wcag: '
|
|
939
|
+
readonly headingStructure: {
|
|
940
|
+
readonly summary: 'heading structure illogical';
|
|
941
|
+
readonly why: 'Helper misdescribes the page';
|
|
942
|
+
readonly wcag: '1.3.1';
|
|
943
|
+
readonly weight: 2;
|
|
944
|
+
};
|
|
945
|
+
readonly hideFailureRisk: {
|
|
946
|
+
readonly summary: 'false aria-hidden value risky';
|
|
947
|
+
readonly why: 'User may be misled by erroneously hidden or revealed page content';
|
|
948
|
+
readonly wcag: '2.4.6';
|
|
949
|
+
readonly weight: 1;
|
|
950
|
+
};
|
|
951
|
+
readonly horizontalSpacingFrozen: {
|
|
952
|
+
readonly summary: 'horizontal text spacing frozen';
|
|
953
|
+
readonly why: 'User cannot adjust the horizontal text spacing for readability';
|
|
954
|
+
readonly wcag: '1.4.12';
|
|
955
|
+
readonly weight: 4;
|
|
956
|
+
};
|
|
957
|
+
readonly hoverIndication: {
|
|
958
|
+
readonly summary: 'hover indication poor';
|
|
959
|
+
readonly why: 'User cannot explore the page reliably with a mouse';
|
|
960
|
+
readonly wcag: '3.3.2';
|
|
885
961
|
readonly weight: 3;
|
|
886
962
|
};
|
|
887
|
-
readonly
|
|
888
|
-
readonly summary: '
|
|
889
|
-
readonly why: '
|
|
890
|
-
readonly wcag: '
|
|
963
|
+
readonly hoverSurprise: {
|
|
964
|
+
readonly summary: 'hovering changes content';
|
|
965
|
+
readonly why: 'User cannot explore the page reliably with a mouse';
|
|
966
|
+
readonly wcag: '3.2.5';
|
|
891
967
|
readonly weight: 1;
|
|
892
968
|
};
|
|
893
|
-
readonly
|
|
894
|
-
readonly summary: '
|
|
969
|
+
readonly hrConfusionRisk: {
|
|
970
|
+
readonly summary: 'hr misused';
|
|
971
|
+
readonly why: 'User cannot get help on the nature of segments of the page';
|
|
972
|
+
readonly wcag: '1.3.1';
|
|
973
|
+
readonly weight: 1;
|
|
974
|
+
};
|
|
975
|
+
readonly idEmpty: {
|
|
976
|
+
readonly summary: 'ID empty';
|
|
895
977
|
readonly why: 'Item behaves improperly';
|
|
896
|
-
readonly wcag: '
|
|
978
|
+
readonly wcag: '1.3.1';
|
|
897
979
|
readonly weight: 4;
|
|
898
980
|
};
|
|
899
|
-
readonly
|
|
900
|
-
readonly summary: '
|
|
901
|
-
readonly why: '
|
|
902
|
-
readonly wcag: '4.1.2';
|
|
903
|
-
readonly weight: 2;
|
|
904
|
-
};
|
|
905
|
-
readonly ariaAttributeBad: {
|
|
906
|
-
readonly summary: 'aria attribute invalid';
|
|
907
|
-
readonly why: 'Item behavior violates user expectations';
|
|
981
|
+
readonly iframeTitleBad: {
|
|
982
|
+
readonly summary: 'iframe not named';
|
|
983
|
+
readonly why: 'User cannot get help on the topic of an embedded page';
|
|
908
984
|
readonly wcag: '4.1.2';
|
|
909
985
|
readonly weight: 4;
|
|
910
986
|
};
|
|
911
|
-
readonly
|
|
912
|
-
readonly summary: '
|
|
913
|
-
readonly why: '
|
|
914
|
-
readonly wcag: '
|
|
987
|
+
readonly ignorable: {
|
|
988
|
+
readonly summary: 'ignorable';
|
|
989
|
+
readonly why: 'No known impact, because the test is unreliable or invalid';
|
|
990
|
+
readonly wcag: '';
|
|
915
991
|
readonly weight: 1;
|
|
916
992
|
};
|
|
917
|
-
readonly
|
|
918
|
-
readonly summary: '
|
|
919
|
-
readonly why: '
|
|
920
|
-
readonly wcag: '
|
|
993
|
+
readonly imageBanned: {
|
|
994
|
+
readonly summary: 'image prohibited';
|
|
995
|
+
readonly why: 'Browser fails to display an image';
|
|
996
|
+
readonly wcag: '1.4';
|
|
997
|
+
readonly weight: 3;
|
|
998
|
+
};
|
|
999
|
+
readonly imageButtonNoText: {
|
|
1000
|
+
readonly summary: 'image button not named';
|
|
1001
|
+
readonly why: 'User cannot get help understanding an image used as a button';
|
|
1002
|
+
readonly wcag: '1.1.1';
|
|
921
1003
|
readonly weight: 4;
|
|
922
1004
|
};
|
|
923
|
-
readonly
|
|
924
|
-
readonly summary: '
|
|
925
|
-
readonly why: '
|
|
926
|
-
readonly wcag: '1.
|
|
1005
|
+
readonly imageInputNoText: {
|
|
1006
|
+
readonly summary: 'image input not named';
|
|
1007
|
+
readonly why: 'User cannot get help understanding an image used as a submission button';
|
|
1008
|
+
readonly wcag: '1.1.1';
|
|
927
1009
|
readonly weight: 4;
|
|
928
1010
|
};
|
|
929
|
-
readonly
|
|
930
|
-
readonly summary: '
|
|
931
|
-
readonly why: 'User cannot get help
|
|
932
|
-
readonly wcag: '
|
|
933
|
-
readonly weight:
|
|
1011
|
+
readonly imageLinkNoText: {
|
|
1012
|
+
readonly summary: 'image link not named';
|
|
1013
|
+
readonly why: 'User cannot get help understanding what a link points to';
|
|
1014
|
+
readonly wcag: '2.4.4';
|
|
1015
|
+
readonly weight: 4;
|
|
934
1016
|
};
|
|
935
|
-
readonly
|
|
936
|
-
readonly summary: '
|
|
937
|
-
readonly why: 'User cannot get help
|
|
938
|
-
readonly wcag: '1.
|
|
1017
|
+
readonly imageMapAreaNoText: {
|
|
1018
|
+
readonly summary: 'image map area not named';
|
|
1019
|
+
readonly why: 'User cannot get help on how to use an interactive image';
|
|
1020
|
+
readonly wcag: '1.1.1';
|
|
939
1021
|
readonly weight: 4;
|
|
940
1022
|
};
|
|
941
|
-
readonly
|
|
942
|
-
readonly summary: '
|
|
943
|
-
readonly why: 'User
|
|
944
|
-
readonly wcag: '1.
|
|
945
|
-
readonly weight:
|
|
1023
|
+
readonly imageMapNoText: {
|
|
1024
|
+
readonly summary: 'image map not named';
|
|
1025
|
+
readonly why: 'User cannot get help on the topic of an interactive image';
|
|
1026
|
+
readonly wcag: '1.1.1';
|
|
1027
|
+
readonly weight: 4;
|
|
946
1028
|
};
|
|
947
|
-
readonly
|
|
948
|
-
readonly summary: '
|
|
949
|
-
readonly why: 'User
|
|
950
|
-
readonly wcag: '1.
|
|
1029
|
+
readonly imageNoText: {
|
|
1030
|
+
readonly summary: 'image not named';
|
|
1031
|
+
readonly why: 'User cannot get help to know what is in an image';
|
|
1032
|
+
readonly wcag: '1.1.1';
|
|
951
1033
|
readonly weight: 4;
|
|
952
1034
|
};
|
|
953
|
-
readonly
|
|
954
|
-
readonly summary: '
|
|
955
|
-
readonly why: '
|
|
956
|
-
readonly wcag: '1.
|
|
1035
|
+
readonly imagesSameAlt: {
|
|
1036
|
+
readonly summary: 'nearby images have same alt';
|
|
1037
|
+
readonly why: 'User cannot get help differentiating two adjacent images';
|
|
1038
|
+
readonly wcag: '1.1.1';
|
|
957
1039
|
readonly weight: 1;
|
|
958
1040
|
};
|
|
959
|
-
readonly
|
|
960
|
-
readonly summary: '
|
|
961
|
-
readonly why: '
|
|
962
|
-
readonly wcag: '1.
|
|
963
|
-
readonly weight:
|
|
1041
|
+
readonly imageTextBad: {
|
|
1042
|
+
readonly summary: 'image named with filename';
|
|
1043
|
+
readonly why: 'Helper gives a user the filename of an image instead of describing it';
|
|
1044
|
+
readonly wcag: '1.1.1';
|
|
1045
|
+
readonly weight: 3;
|
|
964
1046
|
};
|
|
965
|
-
readonly
|
|
966
|
-
readonly summary: '
|
|
967
|
-
readonly why: '
|
|
968
|
-
readonly wcag: '1.
|
|
1047
|
+
readonly imageTextImage: {
|
|
1048
|
+
readonly summary: 'image name contains image';
|
|
1049
|
+
readonly why: 'User is redundantly told an image is an image';
|
|
1050
|
+
readonly wcag: '1.1.1';
|
|
969
1051
|
readonly weight: 1;
|
|
970
1052
|
};
|
|
971
|
-
readonly
|
|
972
|
-
readonly summary: '
|
|
973
|
-
readonly why: '
|
|
974
|
-
readonly wcag: '1.
|
|
1053
|
+
readonly imageTextLong: {
|
|
1054
|
+
readonly summary: 'image alt long';
|
|
1055
|
+
readonly why: 'Helper gives a user an overly verbose explanation of an image';
|
|
1056
|
+
readonly wcag: '1.1.1';
|
|
1057
|
+
readonly weight: 2;
|
|
1058
|
+
};
|
|
1059
|
+
readonly imageTextRedundant: {
|
|
1060
|
+
readonly summary: 'image name redundant';
|
|
1061
|
+
readonly why: 'Helper repeats the explanation of an image';
|
|
1062
|
+
readonly wcag: '1.1.1';
|
|
1063
|
+
readonly weight: 1;
|
|
1064
|
+
};
|
|
1065
|
+
readonly imageTextRisk: {
|
|
1066
|
+
readonly summary: 'image dubiously named';
|
|
1067
|
+
readonly why: 'Helper may describe an image inadequately';
|
|
1068
|
+
readonly wcag: '1.1.1';
|
|
1069
|
+
readonly weight: 1;
|
|
1070
|
+
};
|
|
1071
|
+
readonly imageTextSpaces: {
|
|
1072
|
+
readonly summary: 'image name contains only spacing characters';
|
|
1073
|
+
readonly why: 'User cannot get help understanding an image';
|
|
1074
|
+
readonly wcag: '1.1.1';
|
|
1075
|
+
readonly weight: 4;
|
|
1076
|
+
};
|
|
1077
|
+
readonly inconsistentStyles: {
|
|
1078
|
+
readonly summary: 'inconsistent heading, link, or button styles';
|
|
1079
|
+
readonly why: 'User cannot easily distinguish items of different types';
|
|
1080
|
+
readonly wcag: '3.2.4';
|
|
975
1081
|
readonly weight: 1;
|
|
976
1082
|
};
|
|
977
1083
|
readonly infoNeedsColor: {
|
|
@@ -980,253 +1086,274 @@ declare const issuesData: {
|
|
|
980
1086
|
readonly wcag: '1.4.1';
|
|
981
1087
|
readonly weight: 1;
|
|
982
1088
|
};
|
|
983
|
-
readonly
|
|
984
|
-
readonly summary: '
|
|
985
|
-
readonly why: '
|
|
986
|
-
readonly wcag: '1.
|
|
1089
|
+
readonly inputInTable: {
|
|
1090
|
+
readonly summary: 'input embedded in table';
|
|
1091
|
+
readonly why: 'Entry of data in a form may confuse a keyboard-only user';
|
|
1092
|
+
readonly wcag: '2.1.1';
|
|
987
1093
|
readonly weight: 1;
|
|
988
1094
|
};
|
|
989
|
-
readonly
|
|
990
|
-
readonly summary: '
|
|
991
|
-
readonly why: '
|
|
992
|
-
readonly wcag: '
|
|
1095
|
+
readonly inputLabelInvisibleRisk: {
|
|
1096
|
+
readonly summary: 'input label invisible?';
|
|
1097
|
+
readonly why: 'User cannot understand where to enter information';
|
|
1098
|
+
readonly wcag: '2.4.6';
|
|
993
1099
|
readonly weight: 1;
|
|
994
1100
|
};
|
|
995
|
-
readonly
|
|
996
|
-
readonly summary: '
|
|
997
|
-
readonly why: '
|
|
998
|
-
readonly wcag: '1.3.1';
|
|
999
|
-
readonly weight: 4;
|
|
1000
|
-
};
|
|
1001
|
-
readonly targetEmpty: {
|
|
1002
|
-
readonly summary: 'target empty';
|
|
1003
|
-
readonly why: 'Item is displayed improperly';
|
|
1004
|
-
readonly wcag: '1.3.1';
|
|
1005
|
-
readonly weight: 4;
|
|
1006
|
-
};
|
|
1007
|
-
readonly headingsEmbedded: {
|
|
1008
|
-
readonly summary: 'heading within a heading';
|
|
1009
|
-
readonly why: 'User cannot understand the page organization';
|
|
1101
|
+
readonly inputNoText: {
|
|
1102
|
+
readonly summary: 'input not named';
|
|
1103
|
+
readonly why: 'User cannot get help on what information to enter in a form item';
|
|
1010
1104
|
readonly wcag: '4.1.2';
|
|
1011
1105
|
readonly weight: 4;
|
|
1012
1106
|
};
|
|
1013
|
-
readonly
|
|
1014
|
-
readonly summary: '
|
|
1015
|
-
readonly why: 'User cannot get help on
|
|
1016
|
-
readonly wcag: '
|
|
1107
|
+
readonly inputOnlyPlaceholder: {
|
|
1108
|
+
readonly summary: 'input has placeholder instead of name';
|
|
1109
|
+
readonly why: 'User cannot get reliable help on what information to enter in a form item';
|
|
1110
|
+
readonly wcag: '4.1.2';
|
|
1017
1111
|
readonly weight: 3;
|
|
1018
1112
|
};
|
|
1019
|
-
readonly
|
|
1020
|
-
readonly summary: '
|
|
1021
|
-
readonly why: '
|
|
1113
|
+
readonly internalLinkBroken: {
|
|
1114
|
+
readonly summary: 'internal link broken';
|
|
1115
|
+
readonly why: 'User cannot reach a promised page location';
|
|
1022
1116
|
readonly wcag: '1.3.1';
|
|
1023
|
-
readonly weight:
|
|
1117
|
+
readonly weight: 4;
|
|
1024
1118
|
};
|
|
1025
|
-
readonly
|
|
1026
|
-
readonly summary: '
|
|
1027
|
-
readonly why: '
|
|
1119
|
+
readonly itemIDBad: {
|
|
1120
|
+
readonly summary: 'itemid invalid';
|
|
1121
|
+
readonly why: 'User cannot get help to identify a referent';
|
|
1028
1122
|
readonly wcag: '1.3.1';
|
|
1029
1123
|
readonly weight: 4;
|
|
1030
1124
|
};
|
|
1031
|
-
readonly
|
|
1032
|
-
readonly summary: '
|
|
1033
|
-
readonly why: '
|
|
1125
|
+
readonly itemTypeBad: {
|
|
1126
|
+
readonly summary: 'itemtype invalid';
|
|
1127
|
+
readonly why: 'User cannot get help on the definition of a term';
|
|
1034
1128
|
readonly wcag: '1.3.1';
|
|
1035
|
-
readonly weight:
|
|
1129
|
+
readonly weight: 4;
|
|
1036
1130
|
};
|
|
1037
|
-
readonly
|
|
1038
|
-
readonly summary: '
|
|
1039
|
-
readonly why: '
|
|
1040
|
-
readonly wcag: '1.
|
|
1041
|
-
readonly weight:
|
|
1131
|
+
readonly justification: {
|
|
1132
|
+
readonly summary: 'text fully justified';
|
|
1133
|
+
readonly why: 'Text is difficult to read';
|
|
1134
|
+
readonly wcag: '1.4.8';
|
|
1135
|
+
readonly weight: 2;
|
|
1042
1136
|
};
|
|
1043
|
-
readonly
|
|
1044
|
-
readonly summary: '
|
|
1045
|
-
readonly why: '
|
|
1137
|
+
readonly justificationRisk: {
|
|
1138
|
+
readonly summary: 'justification undefined?';
|
|
1139
|
+
readonly why: 'Text may be difficult to read';
|
|
1140
|
+
readonly wcag: '1.4.8';
|
|
1141
|
+
readonly weight: 1;
|
|
1142
|
+
};
|
|
1143
|
+
readonly keyboardScroll: {
|
|
1144
|
+
readonly summary: 'element not scrollable';
|
|
1145
|
+
readonly why: 'Keyboard-only user cannot scroll an item';
|
|
1146
|
+
readonly wcag: '2.1.1';
|
|
1147
|
+
readonly weight: 4;
|
|
1148
|
+
};
|
|
1149
|
+
readonly labelBadID: {
|
|
1150
|
+
readonly summary: 'label reference invalid';
|
|
1151
|
+
readonly why: 'User cannot get help understanding an item in a form';
|
|
1046
1152
|
readonly wcag: '1.3.1';
|
|
1047
|
-
readonly weight:
|
|
1153
|
+
readonly weight: 4;
|
|
1048
1154
|
};
|
|
1049
|
-
readonly
|
|
1050
|
-
readonly summary: '
|
|
1051
|
-
readonly why: '
|
|
1155
|
+
readonly labelClash: {
|
|
1156
|
+
readonly summary: 'label types incompatible';
|
|
1157
|
+
readonly why: 'User cannot get reliable help on the topics of form items';
|
|
1052
1158
|
readonly wcag: '1.3.1';
|
|
1159
|
+
readonly weight: 2;
|
|
1160
|
+
};
|
|
1161
|
+
readonly labelConfusionRisk: {
|
|
1162
|
+
readonly summary: 'label location dubious';
|
|
1163
|
+
readonly why: 'User may fail to notice the explanation of an item in a form';
|
|
1164
|
+
readonly wcag: '3.3.2';
|
|
1053
1165
|
readonly weight: 1;
|
|
1054
1166
|
};
|
|
1055
|
-
readonly
|
|
1056
|
-
readonly summary: '
|
|
1057
|
-
readonly why: '
|
|
1167
|
+
readonly labeledHidden: {
|
|
1168
|
+
readonly summary: 'control hidden but labeled';
|
|
1169
|
+
readonly why: 'Document includes unnecessary code';
|
|
1058
1170
|
readonly wcag: '1.3.1';
|
|
1059
1171
|
readonly weight: 1;
|
|
1060
1172
|
};
|
|
1061
|
-
readonly
|
|
1062
|
-
readonly summary: '
|
|
1063
|
-
readonly why: '
|
|
1173
|
+
readonly labelEmpty: {
|
|
1174
|
+
readonly summary: 'label empty';
|
|
1175
|
+
readonly why: 'User cannot get help on the topics of form items';
|
|
1064
1176
|
readonly wcag: '1.3.1';
|
|
1065
|
-
readonly weight:
|
|
1066
|
-
readonly max: 1;
|
|
1177
|
+
readonly weight: 3;
|
|
1067
1178
|
};
|
|
1068
|
-
readonly
|
|
1069
|
-
readonly summary: '
|
|
1070
|
-
readonly why: '
|
|
1179
|
+
readonly labelForBad: {
|
|
1180
|
+
readonly summary: 'label referent ineligible';
|
|
1181
|
+
readonly why: 'User cannot get help understanding an item in a form';
|
|
1071
1182
|
readonly wcag: '1.3.1';
|
|
1072
1183
|
readonly weight: 4;
|
|
1073
|
-
readonly max: 1;
|
|
1074
1184
|
};
|
|
1075
|
-
readonly
|
|
1076
|
-
readonly summary: '
|
|
1077
|
-
readonly why: '
|
|
1185
|
+
readonly labelNot1: {
|
|
1186
|
+
readonly summary: 'element referenced by multiple labels';
|
|
1187
|
+
readonly why: 'User cannot get reliable help on the topics of form items';
|
|
1078
1188
|
readonly wcag: '1.3.1';
|
|
1079
|
-
readonly weight:
|
|
1080
|
-
readonly max: 1;
|
|
1189
|
+
readonly weight: 1;
|
|
1081
1190
|
};
|
|
1082
|
-
readonly
|
|
1083
|
-
readonly summary: '
|
|
1084
|
-
readonly why: '
|
|
1191
|
+
readonly labelNoText: {
|
|
1192
|
+
readonly summary: 'label not named';
|
|
1193
|
+
readonly why: 'User cannot get help on the topic of a form item';
|
|
1085
1194
|
readonly wcag: '1.3.1';
|
|
1195
|
+
readonly weight: 4;
|
|
1196
|
+
};
|
|
1197
|
+
readonly labelRisk: {
|
|
1198
|
+
readonly summary: 'labeling risky';
|
|
1199
|
+
readonly why: 'User may misunderstand a form control';
|
|
1200
|
+
readonly wcag: '3.3.2';
|
|
1201
|
+
readonly weight: 1;
|
|
1202
|
+
};
|
|
1203
|
+
readonly landmarkConfusion: {
|
|
1204
|
+
readonly summary: 'landmarks not distinctly named';
|
|
1205
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1206
|
+
readonly wcag: '1.3.6';
|
|
1086
1207
|
readonly weight: 3;
|
|
1087
|
-
readonly max: 1;
|
|
1088
1208
|
};
|
|
1089
|
-
readonly
|
|
1090
|
-
readonly summary: '
|
|
1091
|
-
readonly why: 'User
|
|
1092
|
-
readonly wcag: '
|
|
1209
|
+
readonly landmarkInNav: {
|
|
1210
|
+
readonly summary: 'invalid landmark child of navigation role';
|
|
1211
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1212
|
+
readonly wcag: '1.3.6';
|
|
1093
1213
|
readonly weight: 4;
|
|
1094
|
-
readonly max: 1;
|
|
1095
1214
|
};
|
|
1096
|
-
readonly
|
|
1097
|
-
readonly summary: '
|
|
1098
|
-
readonly why: '
|
|
1099
|
-
readonly wcag: '
|
|
1215
|
+
readonly languageChange: {
|
|
1216
|
+
readonly summary: 'language change invalid';
|
|
1217
|
+
readonly why: 'Speaking helper may mispronounce the text of an item';
|
|
1218
|
+
readonly wcag: '3.1.2';
|
|
1100
1219
|
readonly weight: 3;
|
|
1101
1220
|
};
|
|
1102
|
-
readonly
|
|
1103
|
-
readonly summary: '
|
|
1104
|
-
readonly why: 'Helper
|
|
1221
|
+
readonly layoutTable: {
|
|
1222
|
+
readonly summary: 'table misused';
|
|
1223
|
+
readonly why: 'Helper misinforms a user about whether items are cells of a table';
|
|
1105
1224
|
readonly wcag: '1.3.1';
|
|
1106
1225
|
readonly weight: 2;
|
|
1107
1226
|
};
|
|
1108
|
-
readonly
|
|
1109
|
-
readonly summary: '
|
|
1110
|
-
readonly why: '
|
|
1111
|
-
readonly wcag: '1.
|
|
1112
|
-
readonly weight:
|
|
1227
|
+
readonly legendMisplaced: {
|
|
1228
|
+
readonly summary: 'legend location invalid';
|
|
1229
|
+
readonly why: 'User cannot get help on the topic of a group of form items';
|
|
1230
|
+
readonly wcag: '4.1.2';
|
|
1231
|
+
readonly weight: 4;
|
|
1113
1232
|
};
|
|
1114
|
-
readonly
|
|
1115
|
-
readonly summary: '
|
|
1116
|
-
readonly why: 'User cannot
|
|
1117
|
-
readonly wcag: '1.
|
|
1233
|
+
readonly legendMissing: {
|
|
1234
|
+
readonly summary: 'legend missing';
|
|
1235
|
+
readonly why: 'User cannot get help on the topic of a group of form items';
|
|
1236
|
+
readonly wcag: '4.1.2';
|
|
1118
1237
|
readonly weight: 2;
|
|
1119
1238
|
};
|
|
1120
|
-
readonly
|
|
1121
|
-
readonly summary: '
|
|
1122
|
-
readonly why: 'User cannot
|
|
1123
|
-
readonly wcag: '1.
|
|
1239
|
+
readonly lineHeightAbsolute: {
|
|
1240
|
+
readonly summary: 'line height absolute';
|
|
1241
|
+
readonly why: 'User cannot adjust the line height of text for readability';
|
|
1242
|
+
readonly wcag: '1.4.12';
|
|
1124
1243
|
readonly weight: 2;
|
|
1125
1244
|
};
|
|
1126
|
-
readonly
|
|
1127
|
-
readonly summary: '
|
|
1128
|
-
readonly why: '
|
|
1129
|
-
readonly wcag: '1.
|
|
1130
|
-
readonly weight:
|
|
1131
|
-
readonly max: 1;
|
|
1245
|
+
readonly lineHeightBad: {
|
|
1246
|
+
readonly summary: 'line height misdefined';
|
|
1247
|
+
readonly why: 'Text is difficult to read';
|
|
1248
|
+
readonly wcag: '1.4.8';
|
|
1249
|
+
readonly weight: 4;
|
|
1132
1250
|
};
|
|
1133
|
-
readonly
|
|
1134
|
-
readonly summary: '
|
|
1135
|
-
readonly why: '
|
|
1136
|
-
readonly wcag: '1.
|
|
1251
|
+
readonly lineHeightLow: {
|
|
1252
|
+
readonly summary: 'line height low';
|
|
1253
|
+
readonly why: 'Text is difficult to read';
|
|
1254
|
+
readonly wcag: '1.4.8';
|
|
1137
1255
|
readonly weight: 2;
|
|
1138
|
-
readonly max: 1;
|
|
1139
1256
|
};
|
|
1140
|
-
readonly
|
|
1141
|
-
readonly summary: '
|
|
1142
|
-
readonly why: '
|
|
1143
|
-
readonly wcag: '1.
|
|
1144
|
-
readonly weight:
|
|
1145
|
-
readonly max: 1;
|
|
1257
|
+
readonly linkAltSame: {
|
|
1258
|
+
readonly summary: 'link image alt duplicative';
|
|
1259
|
+
readonly why: 'Helper repeats the explanation of a link';
|
|
1260
|
+
readonly wcag: '1.1.1';
|
|
1261
|
+
readonly weight: 2;
|
|
1146
1262
|
};
|
|
1147
|
-
readonly
|
|
1148
|
-
readonly summary: '
|
|
1149
|
-
readonly why: 'User
|
|
1263
|
+
readonly linkBrokenRisk: {
|
|
1264
|
+
readonly summary: 'link incomplete';
|
|
1265
|
+
readonly why: 'User may fail to reach a promised location';
|
|
1150
1266
|
readonly wcag: '1.3.1';
|
|
1151
1267
|
readonly weight: 2;
|
|
1152
|
-
readonly max: 1;
|
|
1153
1268
|
};
|
|
1154
|
-
readonly
|
|
1155
|
-
readonly summary: '
|
|
1156
|
-
readonly why: 'User
|
|
1157
|
-
readonly wcag: '
|
|
1269
|
+
readonly linkConfusionRisk: {
|
|
1270
|
+
readonly summary: 'links dubiously share name';
|
|
1271
|
+
readonly why: 'User may be unable to get help differentiating links';
|
|
1272
|
+
readonly wcag: '2.4.4';
|
|
1158
1273
|
readonly weight: 1;
|
|
1159
1274
|
};
|
|
1160
|
-
readonly
|
|
1161
|
-
readonly summary: '
|
|
1162
|
-
readonly why: '
|
|
1275
|
+
readonly linkElementBad: {
|
|
1276
|
+
readonly summary: 'link element invalid';
|
|
1277
|
+
readonly why: 'Document fails to get a needed external resource';
|
|
1163
1278
|
readonly wcag: '1.3.1';
|
|
1164
|
-
readonly weight:
|
|
1279
|
+
readonly weight: 4;
|
|
1165
1280
|
};
|
|
1166
|
-
readonly
|
|
1167
|
-
readonly summary: '
|
|
1168
|
-
readonly why: '
|
|
1281
|
+
readonly linkElementMisplaced: {
|
|
1282
|
+
readonly summary: 'link element misplaced';
|
|
1283
|
+
readonly why: 'Document fails to get a needed external resource';
|
|
1169
1284
|
readonly wcag: '1.3.1';
|
|
1170
|
-
readonly weight:
|
|
1285
|
+
readonly weight: 4;
|
|
1171
1286
|
};
|
|
1172
|
-
readonly
|
|
1173
|
-
readonly summary: '
|
|
1174
|
-
readonly why: '
|
|
1175
|
-
readonly wcag: '
|
|
1176
|
-
readonly weight:
|
|
1287
|
+
readonly linkElNoHref: {
|
|
1288
|
+
readonly summary: 'link element href missing';
|
|
1289
|
+
readonly why: 'User cannot reach a promised location';
|
|
1290
|
+
readonly wcag: '4.1';
|
|
1291
|
+
readonly weight: 3;
|
|
1177
1292
|
};
|
|
1178
|
-
readonly
|
|
1179
|
-
readonly summary: '
|
|
1180
|
-
readonly why: '
|
|
1181
|
-
readonly wcag: '
|
|
1182
|
-
readonly weight:
|
|
1293
|
+
readonly linkElNoSource: {
|
|
1294
|
+
readonly summary: 'link element href or imagesrcset missing';
|
|
1295
|
+
readonly why: 'User cannot reach a promised location';
|
|
1296
|
+
readonly wcag: '4.1';
|
|
1297
|
+
readonly weight: 3;
|
|
1183
1298
|
};
|
|
1184
|
-
readonly
|
|
1185
|
-
readonly summary: '
|
|
1186
|
-
readonly why: '
|
|
1187
|
-
readonly wcag: '
|
|
1299
|
+
readonly linkFileName: {
|
|
1300
|
+
readonly summary: 'link names a file instead of a purpose';
|
|
1301
|
+
readonly why: 'User may fail to understand what a link points to';
|
|
1302
|
+
readonly wcag: '2.4.4';
|
|
1188
1303
|
readonly weight: 1;
|
|
1189
1304
|
};
|
|
1190
|
-
readonly
|
|
1191
|
-
readonly summary: '
|
|
1192
|
-
readonly why: 'User cannot
|
|
1193
|
-
readonly wcag: '
|
|
1305
|
+
readonly linkImageTextURL: {
|
|
1306
|
+
readonly summary: 'text alternative of link image a URL';
|
|
1307
|
+
readonly why: 'User cannot understand what a link points to';
|
|
1308
|
+
readonly wcag: '2.4.4';
|
|
1309
|
+
readonly weight: 3;
|
|
1310
|
+
};
|
|
1311
|
+
readonly linkIndication: {
|
|
1312
|
+
readonly summary: 'link indication poor';
|
|
1313
|
+
readonly why: 'User cannot differentiate a link from plain text';
|
|
1314
|
+
readonly wcag: '1.3.3';
|
|
1194
1315
|
readonly weight: 2;
|
|
1195
1316
|
};
|
|
1196
|
-
readonly
|
|
1197
|
-
readonly summary: '
|
|
1198
|
-
readonly why: '
|
|
1199
|
-
readonly wcag: '
|
|
1317
|
+
readonly linkNameRisk: {
|
|
1318
|
+
readonly summary: 'image link text suspect';
|
|
1319
|
+
readonly why: 'Keyboard-only user may misunderstand the effect of following a link';
|
|
1320
|
+
readonly wcag: '2.4.4';
|
|
1200
1321
|
readonly weight: 1;
|
|
1201
1322
|
};
|
|
1202
|
-
readonly
|
|
1203
|
-
readonly summary: '
|
|
1204
|
-
readonly why: 'User
|
|
1205
|
-
readonly wcag: '
|
|
1206
|
-
readonly weight:
|
|
1323
|
+
readonly linkNoText: {
|
|
1324
|
+
readonly summary: 'link not named';
|
|
1325
|
+
readonly why: 'User cannot get help understanding what a link points to';
|
|
1326
|
+
readonly wcag: '2.4.4';
|
|
1327
|
+
readonly weight: 4;
|
|
1207
1328
|
};
|
|
1208
|
-
readonly
|
|
1209
|
-
readonly summary: '
|
|
1210
|
-
readonly why: '
|
|
1211
|
-
readonly wcag: '
|
|
1212
|
-
readonly weight:
|
|
1329
|
+
readonly linkPair: {
|
|
1330
|
+
readonly summary: 'adjacent links not combined';
|
|
1331
|
+
readonly why: 'Keyboard-only user expends extra effort to skip a link';
|
|
1332
|
+
readonly wcag: '2.4.4';
|
|
1333
|
+
readonly weight: 2;
|
|
1213
1334
|
};
|
|
1214
|
-
readonly
|
|
1215
|
-
readonly summary: '
|
|
1216
|
-
readonly why: '
|
|
1217
|
-
readonly wcag: '
|
|
1335
|
+
readonly linkPairRisk: {
|
|
1336
|
+
readonly summary: 'text and image link may merit combination';
|
|
1337
|
+
readonly why: 'Keyboard-only user may expend extra effort to skip a link';
|
|
1338
|
+
readonly wcag: '2.4.4';
|
|
1218
1339
|
readonly weight: 1;
|
|
1219
1340
|
};
|
|
1220
|
-
readonly
|
|
1221
|
-
readonly summary: '
|
|
1222
|
-
readonly why: '
|
|
1341
|
+
readonly linksNoNav: {
|
|
1342
|
+
readonly summary: 'links not grouped as nav';
|
|
1343
|
+
readonly why: 'User cannot get help identifying links as a navigation tool';
|
|
1223
1344
|
readonly wcag: '1.3.1';
|
|
1224
|
-
readonly weight:
|
|
1345
|
+
readonly weight: 2;
|
|
1225
1346
|
};
|
|
1226
|
-
readonly
|
|
1227
|
-
readonly summary: '
|
|
1228
|
-
readonly why: 'User
|
|
1229
|
-
readonly wcag: '
|
|
1347
|
+
readonly linkTextsSame: {
|
|
1348
|
+
readonly summary: 'links named identically';
|
|
1349
|
+
readonly why: 'User cannot get help differentiating links';
|
|
1350
|
+
readonly wcag: '2.4.4';
|
|
1351
|
+
readonly weight: 2;
|
|
1352
|
+
};
|
|
1353
|
+
readonly linkVaguenessRisk: {
|
|
1354
|
+
readonly summary: 'link name vague';
|
|
1355
|
+
readonly why: 'User may misunderstand what a link points to';
|
|
1356
|
+
readonly wcag: '2.4.4';
|
|
1230
1357
|
readonly weight: 1;
|
|
1231
1358
|
};
|
|
1232
1359
|
readonly listChild: {
|
|
@@ -1241,46 +1368,146 @@ declare const issuesData: {
|
|
|
1241
1368
|
readonly wcag: '1.3.1';
|
|
1242
1369
|
readonly weight: 4;
|
|
1243
1370
|
};
|
|
1244
|
-
readonly
|
|
1245
|
-
readonly summary: '
|
|
1246
|
-
readonly why: 'User cannot get help on
|
|
1371
|
+
readonly mainConfusion: {
|
|
1372
|
+
readonly summary: 'mains not distinctly named';
|
|
1373
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1374
|
+
readonly wcag: '1.3.6';
|
|
1375
|
+
readonly weight: 3;
|
|
1376
|
+
};
|
|
1377
|
+
readonly mainNone: {
|
|
1378
|
+
readonly summary: 'main missing';
|
|
1379
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1380
|
+
readonly wcag: '1.3.6';
|
|
1381
|
+
readonly weight: 2;
|
|
1382
|
+
readonly max: 1;
|
|
1383
|
+
};
|
|
1384
|
+
readonly mainNot1: {
|
|
1385
|
+
readonly summary: 'multiple mains';
|
|
1386
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1387
|
+
readonly wcag: '1.3.6';
|
|
1388
|
+
readonly weight: 2;
|
|
1389
|
+
readonly max: 1;
|
|
1390
|
+
};
|
|
1391
|
+
readonly mainNotTop: {
|
|
1392
|
+
readonly summary: 'main child of landmark';
|
|
1393
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1394
|
+
readonly wcag: '1.3.6';
|
|
1395
|
+
readonly weight: 2;
|
|
1396
|
+
};
|
|
1397
|
+
readonly menuItemless: {
|
|
1398
|
+
readonly summary: 'menu items missing';
|
|
1399
|
+
readonly why: 'User cannot reach promised menu items';
|
|
1247
1400
|
readonly wcag: '1.3.1';
|
|
1248
1401
|
readonly weight: 4;
|
|
1249
1402
|
};
|
|
1250
|
-
readonly
|
|
1251
|
-
readonly summary: '
|
|
1252
|
-
readonly why: 'User cannot get help
|
|
1253
|
-
readonly wcag: '1.
|
|
1403
|
+
readonly menuItemNoText: {
|
|
1404
|
+
readonly summary: 'menu item not named';
|
|
1405
|
+
readonly why: 'User cannot get help explaing a menu item';
|
|
1406
|
+
readonly wcag: '4.1.2';
|
|
1254
1407
|
readonly weight: 4;
|
|
1255
1408
|
};
|
|
1256
|
-
readonly
|
|
1257
|
-
readonly summary: '
|
|
1258
|
-
readonly why: '
|
|
1259
|
-
readonly wcag: '1.
|
|
1260
|
-
readonly weight:
|
|
1409
|
+
readonly menuNavigation: {
|
|
1410
|
+
readonly summary: 'menu navigation nonstandard';
|
|
1411
|
+
readonly why: 'Menus behave improperly for a keyboard-only user';
|
|
1412
|
+
readonly wcag: '2.1.1';
|
|
1413
|
+
readonly weight: 2;
|
|
1261
1414
|
};
|
|
1262
|
-
readonly
|
|
1263
|
-
readonly summary: '
|
|
1264
|
-
readonly why: '
|
|
1265
|
-
readonly wcag: '
|
|
1266
|
-
readonly weight:
|
|
1415
|
+
readonly metaAttributeBad: {
|
|
1416
|
+
readonly summary: 'meta attribute value invalid';
|
|
1417
|
+
readonly why: 'Browser processes the page incorrectly';
|
|
1418
|
+
readonly wcag: '4.1';
|
|
1419
|
+
readonly weight: 3;
|
|
1267
1420
|
};
|
|
1268
|
-
readonly
|
|
1269
|
-
readonly summary: '
|
|
1270
|
-
readonly why: '
|
|
1421
|
+
readonly metaAttributesWrong: {
|
|
1422
|
+
readonly summary: 'prohibited or missing meta attributes';
|
|
1423
|
+
readonly why: 'Browser processes the page incorrectly';
|
|
1424
|
+
readonly wcag: '4.1';
|
|
1425
|
+
readonly weight: 3;
|
|
1426
|
+
};
|
|
1427
|
+
readonly metaBansZoom: {
|
|
1428
|
+
readonly summary: 'meta bans zoom';
|
|
1429
|
+
readonly why: 'User cannot adjust the page size for readability';
|
|
1430
|
+
readonly wcag: '1.4.4';
|
|
1431
|
+
readonly weight: 4;
|
|
1432
|
+
readonly max: 1;
|
|
1433
|
+
};
|
|
1434
|
+
readonly metaCharsetLate: {
|
|
1435
|
+
readonly summary: 'meta charset declared too late';
|
|
1436
|
+
readonly why: 'Browser may display incorrect text';
|
|
1437
|
+
readonly wcag: '4.1';
|
|
1438
|
+
readonly weight: 4;
|
|
1439
|
+
};
|
|
1440
|
+
readonly metaDuplicated: {
|
|
1441
|
+
readonly summary: 'meta element duplicated';
|
|
1442
|
+
readonly why: 'Browser may process the page incorrectly';
|
|
1443
|
+
readonly wcag: '4.1';
|
|
1444
|
+
readonly weight: 3;
|
|
1445
|
+
};
|
|
1446
|
+
readonly metaMisplaced: {
|
|
1447
|
+
readonly summary: 'meta element in invalid location';
|
|
1448
|
+
readonly why: 'Browser may process the page incorrectly';
|
|
1449
|
+
readonly wcag: '4.1';
|
|
1450
|
+
readonly weight: 4;
|
|
1451
|
+
};
|
|
1452
|
+
readonly metaXUACompatible: {
|
|
1453
|
+
readonly summary: 'meta X-UA-Compatible incomplete';
|
|
1454
|
+
readonly why: 'Internet Explorer may display the page incorrectly';
|
|
1455
|
+
readonly wcag: '4.1';
|
|
1456
|
+
readonly weight: 3;
|
|
1457
|
+
};
|
|
1458
|
+
readonly multipleLabelees: {
|
|
1459
|
+
readonly summary: 'labeled element ambiguous';
|
|
1460
|
+
readonly why: 'User cannot get help on the topic of a form item';
|
|
1271
1461
|
readonly wcag: '1.3.1';
|
|
1462
|
+
readonly weight: 4;
|
|
1463
|
+
};
|
|
1464
|
+
readonly navConfusion: {
|
|
1465
|
+
readonly summary: 'navigations not distinctly named';
|
|
1466
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1467
|
+
readonly wcag: '1.3.6';
|
|
1468
|
+
readonly weight: 3;
|
|
1469
|
+
};
|
|
1470
|
+
readonly negativeIndent: {
|
|
1471
|
+
readonly summary: 'negative text-indent';
|
|
1472
|
+
readonly why: 'Helper may hide content from a user';
|
|
1473
|
+
readonly wcag: '4.1';
|
|
1474
|
+
readonly weight: 3;
|
|
1475
|
+
};
|
|
1476
|
+
readonly nestingBad: {
|
|
1477
|
+
readonly summary: 'nesting invalid';
|
|
1478
|
+
readonly why: 'Document contains invalid code';
|
|
1479
|
+
readonly wcag: '4.1.1';
|
|
1480
|
+
readonly weight: 3;
|
|
1481
|
+
};
|
|
1482
|
+
readonly newTabSurprise: {
|
|
1483
|
+
readonly summary: 'tab-opening link action unstated';
|
|
1484
|
+
readonly why: 'Following a link opens a new window, surprising a user';
|
|
1485
|
+
readonly wcag: '3.2.5';
|
|
1486
|
+
readonly weight: 3;
|
|
1487
|
+
};
|
|
1488
|
+
readonly newTabSurpriseRisk: {
|
|
1489
|
+
readonly summary: 'tab-opening link action unstated?';
|
|
1490
|
+
readonly why: 'Following a link opens a new window, possibly surprising a user';
|
|
1491
|
+
readonly wcag: '3.2.5';
|
|
1272
1492
|
readonly weight: 1;
|
|
1273
1493
|
};
|
|
1274
|
-
readonly
|
|
1275
|
-
readonly summary: '
|
|
1276
|
-
readonly why: 'User cannot get help
|
|
1277
|
-
readonly wcag: '1.3.
|
|
1494
|
+
readonly noLandmarks: {
|
|
1495
|
+
readonly summary: 'no landmarks';
|
|
1496
|
+
readonly why: 'User cannot get help on how the page is organized';
|
|
1497
|
+
readonly wcag: '1.3.6';
|
|
1278
1498
|
readonly weight: 2;
|
|
1499
|
+
readonly max: 1;
|
|
1279
1500
|
};
|
|
1280
|
-
readonly
|
|
1281
|
-
readonly summary: '
|
|
1282
|
-
readonly why: '
|
|
1283
|
-
readonly wcag: '
|
|
1501
|
+
readonly nonElement: {
|
|
1502
|
+
readonly summary: 'element unknown';
|
|
1503
|
+
readonly why: 'Document includes an unknown element that the browser cannot process';
|
|
1504
|
+
readonly wcag: '4.1';
|
|
1505
|
+
readonly weight: 4;
|
|
1506
|
+
};
|
|
1507
|
+
readonly nonLabelableRole: {
|
|
1508
|
+
readonly summary: 'aria-label on non-labelable role';
|
|
1509
|
+
readonly why: 'User is misinformed about an item';
|
|
1510
|
+
readonly wcag: '1.3.1';
|
|
1284
1511
|
readonly weight: 1;
|
|
1285
1512
|
};
|
|
1286
1513
|
readonly nonQuoteRisk: {
|
|
@@ -1289,22 +1516,16 @@ declare const issuesData: {
|
|
|
1289
1516
|
readonly wcag: '3.2.4';
|
|
1290
1517
|
readonly weight: 1;
|
|
1291
1518
|
};
|
|
1292
|
-
readonly
|
|
1293
|
-
readonly summary: '
|
|
1294
|
-
readonly why: 'User cannot get help
|
|
1295
|
-
readonly wcag: '4.1.2';
|
|
1296
|
-
readonly weight: 3;
|
|
1297
|
-
};
|
|
1298
|
-
readonly optionNoText: {
|
|
1299
|
-
readonly summary: 'option not named';
|
|
1300
|
-
readonly why: 'User cannot get help to understand an option';
|
|
1301
|
-
readonly wcag: '4.1.2';
|
|
1302
|
-
readonly weight: 4;
|
|
1303
|
-
};
|
|
1304
|
-
readonly selectFlatRisk: {
|
|
1305
|
-
readonly summary: 'option groups not marked?';
|
|
1306
|
-
readonly why: 'User may be unable to get help recognizing groups of options';
|
|
1519
|
+
readonly nonSemanticText: {
|
|
1520
|
+
readonly summary: 'semantic properties represented with styles';
|
|
1521
|
+
readonly why: 'User cannot get help to fully understand the text';
|
|
1307
1522
|
readonly wcag: '1.3.1';
|
|
1523
|
+
readonly weight: 2;
|
|
1524
|
+
};
|
|
1525
|
+
readonly nonWebLink: {
|
|
1526
|
+
readonly summary: 'link to non-web resource';
|
|
1527
|
+
readonly why: 'Document points to harder-to-use resources';
|
|
1528
|
+
readonly wcag: '1.3.3';
|
|
1308
1529
|
readonly weight: 1;
|
|
1309
1530
|
};
|
|
1310
1531
|
readonly noOptionFocusable: {
|
|
@@ -1313,610 +1534,570 @@ declare const issuesData: {
|
|
|
1313
1534
|
readonly wcag: '2.1.1';
|
|
1314
1535
|
readonly weight: 1;
|
|
1315
1536
|
};
|
|
1316
|
-
readonly
|
|
1317
|
-
readonly summary: '
|
|
1318
|
-
readonly why: '
|
|
1319
|
-
readonly wcag: '
|
|
1320
|
-
readonly weight:
|
|
1537
|
+
readonly noScriptRisk: {
|
|
1538
|
+
readonly summary: 'noscript element not equivalent?';
|
|
1539
|
+
readonly why: 'User who has disabled JavaScript may be denied some content';
|
|
1540
|
+
readonly wcag: '4.1';
|
|
1541
|
+
readonly weight: 1;
|
|
1321
1542
|
};
|
|
1322
|
-
readonly
|
|
1323
|
-
readonly summary: '
|
|
1324
|
-
readonly why: '
|
|
1325
|
-
readonly wcag: '
|
|
1326
|
-
readonly weight:
|
|
1543
|
+
readonly notValidatable: {
|
|
1544
|
+
readonly summary: 'item makes testing inconclusive';
|
|
1545
|
+
readonly why: 'Item prevents a conclusive accessibility test';
|
|
1546
|
+
readonly wcag: '4.1';
|
|
1547
|
+
readonly weight: 1;
|
|
1327
1548
|
};
|
|
1328
|
-
readonly
|
|
1329
|
-
readonly summary: '
|
|
1330
|
-
readonly why: 'User may
|
|
1331
|
-
readonly wcag: '1.
|
|
1549
|
+
readonly objectAudioRisk: {
|
|
1550
|
+
readonly summary: 'non-audio element plays audio?';
|
|
1551
|
+
readonly why: 'User may get inadequate help consuming audio content';
|
|
1552
|
+
readonly wcag: '1.1.1';
|
|
1332
1553
|
readonly weight: 1;
|
|
1333
1554
|
};
|
|
1334
|
-
readonly
|
|
1335
|
-
readonly summary: '
|
|
1336
|
-
readonly why: '
|
|
1337
|
-
readonly wcag: '
|
|
1338
|
-
readonly weight:
|
|
1555
|
+
readonly objectBlurKeyboardRisk: {
|
|
1556
|
+
readonly summary: 'object not keyboard-blurrable?';
|
|
1557
|
+
readonly why: 'Custom item may trap a keyboard-only user';
|
|
1558
|
+
readonly wcag: '2.1.1';
|
|
1559
|
+
readonly weight: 1;
|
|
1339
1560
|
};
|
|
1340
|
-
readonly
|
|
1341
|
-
readonly summary: '
|
|
1342
|
-
readonly why: 'User cannot get help
|
|
1343
|
-
readonly wcag: '
|
|
1344
|
-
readonly weight:
|
|
1345
|
-
};
|
|
1346
|
-
readonly groupName: {
|
|
1347
|
-
readonly summary: 'group not named';
|
|
1348
|
-
readonly why: 'User cannot get help on the topic of a group of form items';
|
|
1349
|
-
readonly wcag: '4.1.2';
|
|
1350
|
-
readonly weight: 3;
|
|
1561
|
+
readonly objectNoText: {
|
|
1562
|
+
readonly summary: 'object not named';
|
|
1563
|
+
readonly why: 'User cannot get help explaining a custom item';
|
|
1564
|
+
readonly wcag: '1.1.1';
|
|
1565
|
+
readonly weight: 4;
|
|
1351
1566
|
};
|
|
1352
|
-
readonly
|
|
1353
|
-
readonly summary: '
|
|
1354
|
-
readonly why: 'Helper
|
|
1355
|
-
readonly wcag: '1.
|
|
1356
|
-
readonly weight:
|
|
1567
|
+
readonly objectTextRisk: {
|
|
1568
|
+
readonly summary: 'object dubiously named';
|
|
1569
|
+
readonly why: 'Helper may explain a custom item inadequately';
|
|
1570
|
+
readonly wcag: '1.1.1';
|
|
1571
|
+
readonly weight: 1;
|
|
1357
1572
|
};
|
|
1358
|
-
readonly
|
|
1359
|
-
readonly summary: '
|
|
1360
|
-
readonly why: '
|
|
1361
|
-
readonly wcag: '
|
|
1573
|
+
readonly obsolete: {
|
|
1574
|
+
readonly summary: 'code obsolete';
|
|
1575
|
+
readonly why: 'Document contains code that is no longer standard';
|
|
1576
|
+
readonly wcag: '4.1';
|
|
1362
1577
|
readonly weight: 3;
|
|
1363
1578
|
};
|
|
1364
|
-
readonly
|
|
1365
|
-
readonly summary: '
|
|
1366
|
-
readonly why: 'User cannot get help
|
|
1367
|
-
readonly wcag: '1.
|
|
1368
|
-
readonly weight:
|
|
1579
|
+
readonly optionNoText: {
|
|
1580
|
+
readonly summary: 'option not named';
|
|
1581
|
+
readonly why: 'User cannot get help to understand an option';
|
|
1582
|
+
readonly wcag: '4.1.2';
|
|
1583
|
+
readonly weight: 4;
|
|
1369
1584
|
};
|
|
1370
|
-
readonly
|
|
1371
|
-
readonly summary: '
|
|
1372
|
-
readonly why: 'User
|
|
1373
|
-
readonly wcag: '1.3.
|
|
1585
|
+
readonly orientationRisk: {
|
|
1586
|
+
readonly summary: 'orientation issues not testable';
|
|
1587
|
+
readonly why: 'User may need to read sideways after rotating a device';
|
|
1588
|
+
readonly wcag: '1.3.4';
|
|
1374
1589
|
readonly weight: 1;
|
|
1590
|
+
readonly max: 1;
|
|
1375
1591
|
};
|
|
1376
|
-
readonly
|
|
1377
|
-
readonly summary: '
|
|
1378
|
-
readonly why: 'User cannot
|
|
1379
|
-
readonly wcag: '1.
|
|
1380
|
-
readonly weight:
|
|
1592
|
+
readonly overflowHidden: {
|
|
1593
|
+
readonly summary: 'overflow hidden';
|
|
1594
|
+
readonly why: 'User cannot enlarge the text for readability';
|
|
1595
|
+
readonly wcag: '1.4.4';
|
|
1596
|
+
readonly weight: 4;
|
|
1381
1597
|
};
|
|
1382
|
-
readonly
|
|
1383
|
-
readonly summary: '
|
|
1384
|
-
readonly why: '
|
|
1385
|
-
readonly wcag: '1.
|
|
1386
|
-
readonly weight:
|
|
1598
|
+
readonly overflowHiddenRisk: {
|
|
1599
|
+
readonly summary: 'overflow hidden?';
|
|
1600
|
+
readonly why: 'User may be unable to enlarge the text for readability';
|
|
1601
|
+
readonly wcag: '1.4.4';
|
|
1602
|
+
readonly weight: 1;
|
|
1387
1603
|
};
|
|
1388
|
-
readonly
|
|
1389
|
-
readonly summary: '
|
|
1390
|
-
readonly why: '
|
|
1391
|
-
readonly wcag: '
|
|
1604
|
+
readonly paddingBad: {
|
|
1605
|
+
readonly summary: 'CSS padding invalid';
|
|
1606
|
+
readonly why: 'Content is displayed improperly';
|
|
1607
|
+
readonly wcag: '4.1';
|
|
1392
1608
|
readonly weight: 4;
|
|
1393
1609
|
};
|
|
1394
|
-
readonly
|
|
1395
|
-
readonly summary: '
|
|
1396
|
-
readonly why: '
|
|
1397
|
-
readonly wcag: '
|
|
1610
|
+
readonly pageLanguage: {
|
|
1611
|
+
readonly summary: 'page language missing';
|
|
1612
|
+
readonly why: 'Speaking helper may mispronounce the page text';
|
|
1613
|
+
readonly wcag: '3.1.1';
|
|
1398
1614
|
readonly weight: 4;
|
|
1615
|
+
readonly max: 1;
|
|
1399
1616
|
};
|
|
1400
|
-
readonly
|
|
1401
|
-
readonly summary: '
|
|
1402
|
-
readonly why: '
|
|
1403
|
-
readonly wcag: '
|
|
1617
|
+
readonly pageLanguageBad: {
|
|
1618
|
+
readonly summary: 'page language invalid';
|
|
1619
|
+
readonly why: 'Speaking helper may mispronounce the page text';
|
|
1620
|
+
readonly wcag: '3.1.1';
|
|
1404
1621
|
readonly weight: 4;
|
|
1622
|
+
readonly max: 1;
|
|
1405
1623
|
};
|
|
1406
|
-
readonly
|
|
1407
|
-
readonly summary: '
|
|
1408
|
-
readonly why: 'User
|
|
1409
|
-
readonly wcag: '
|
|
1624
|
+
readonly pageNewWindow: {
|
|
1625
|
+
readonly summary: 'page immediately opens window';
|
|
1626
|
+
readonly why: 'User promised a page gets another page, too';
|
|
1627
|
+
readonly wcag: '3.2.5';
|
|
1628
|
+
readonly weight: 3;
|
|
1629
|
+
readonly max: 1;
|
|
1630
|
+
};
|
|
1631
|
+
readonly pageTitle: {
|
|
1632
|
+
readonly summary: 'page title missing';
|
|
1633
|
+
readonly why: 'User is not informed of the topic of the page';
|
|
1634
|
+
readonly wcag: '2.4.2';
|
|
1410
1635
|
readonly weight: 4;
|
|
1636
|
+
readonly max: 1;
|
|
1411
1637
|
};
|
|
1412
|
-
readonly
|
|
1413
|
-
readonly summary: '
|
|
1414
|
-
readonly why: '
|
|
1638
|
+
readonly pageTitleBad: {
|
|
1639
|
+
readonly summary: 'page title invalid';
|
|
1640
|
+
readonly why: 'Browser processes the page improperly';
|
|
1415
1641
|
readonly wcag: '1.3.1';
|
|
1416
|
-
readonly weight:
|
|
1642
|
+
readonly weight: 3;
|
|
1643
|
+
readonly max: 1;
|
|
1417
1644
|
};
|
|
1418
|
-
readonly
|
|
1419
|
-
readonly summary: '
|
|
1420
|
-
readonly why: 'User
|
|
1645
|
+
readonly parentBad: {
|
|
1646
|
+
readonly summary: 'parent invalid';
|
|
1647
|
+
readonly why: 'User cannot properly operate an item';
|
|
1421
1648
|
readonly wcag: '1.3.1';
|
|
1422
|
-
readonly weight:
|
|
1649
|
+
readonly weight: 4;
|
|
1423
1650
|
};
|
|
1424
|
-
readonly
|
|
1425
|
-
readonly summary: '
|
|
1426
|
-
readonly why: '
|
|
1651
|
+
readonly parentMissing: {
|
|
1652
|
+
readonly summary: 'parent missing';
|
|
1653
|
+
readonly why: 'Keyboard-only user cannot operate a custom tool';
|
|
1427
1654
|
readonly wcag: '1.3.1';
|
|
1655
|
+
readonly weight: 4;
|
|
1656
|
+
};
|
|
1657
|
+
readonly parseError: {
|
|
1658
|
+
readonly summary: 'code invalid';
|
|
1659
|
+
readonly why: 'Invalid code in the page may prevent a helper from working';
|
|
1660
|
+
readonly wcag: '4.1';
|
|
1428
1661
|
readonly weight: 3;
|
|
1429
1662
|
};
|
|
1430
|
-
readonly
|
|
1431
|
-
readonly summary: '
|
|
1432
|
-
readonly why: 'User
|
|
1433
|
-
readonly wcag: '1.
|
|
1663
|
+
readonly placeholderPlusAria: {
|
|
1664
|
+
readonly summary: 'element has competing placeholder attributes';
|
|
1665
|
+
readonly why: 'User gets conflicting help on what information to enter in a form item';
|
|
1666
|
+
readonly wcag: '4.1.2';
|
|
1434
1667
|
readonly weight: 3;
|
|
1435
1668
|
};
|
|
1436
|
-
readonly
|
|
1437
|
-
readonly summary: '
|
|
1438
|
-
readonly why: 'User
|
|
1669
|
+
readonly positionSticky: {
|
|
1670
|
+
readonly summary: 'position sticky';
|
|
1671
|
+
readonly why: 'User may be unable to see needed content or may be forced to scroll in both dimensions';
|
|
1672
|
+
readonly wcag: '1.4.10';
|
|
1673
|
+
readonly weight: 1;
|
|
1674
|
+
};
|
|
1675
|
+
readonly preselectedOption: {
|
|
1676
|
+
readonly summary: 'no default option';
|
|
1677
|
+
readonly why: 'User may risk erroneously submitting a form';
|
|
1678
|
+
readonly wcag: '4.1.2';
|
|
1679
|
+
readonly weight: 1;
|
|
1680
|
+
};
|
|
1681
|
+
readonly presentationChild: {
|
|
1682
|
+
readonly summary: 'presentation element has child';
|
|
1683
|
+
readonly why: 'Keyboard-only user cannot reach an item intended to be reachable';
|
|
1439
1684
|
readonly wcag: '1.3.1';
|
|
1440
1685
|
readonly weight: 4;
|
|
1441
1686
|
};
|
|
1442
|
-
readonly
|
|
1443
|
-
readonly summary: '
|
|
1444
|
-
readonly why: 'User
|
|
1687
|
+
readonly presentationGlobal: {
|
|
1688
|
+
readonly summary: 'global ARIA attribute nullifies presentation role';
|
|
1689
|
+
readonly why: 'User encounters content intended to be hidden';
|
|
1445
1690
|
readonly wcag: '1.3.1';
|
|
1446
1691
|
readonly weight: 1;
|
|
1447
1692
|
};
|
|
1448
|
-
readonly
|
|
1449
|
-
readonly summary: '
|
|
1450
|
-
readonly why: 'User
|
|
1693
|
+
readonly presentationTabIndexed: {
|
|
1694
|
+
readonly summary: 'tabindex attribute nullifies presentation role';
|
|
1695
|
+
readonly why: 'User encounters content intended to be hidden';
|
|
1451
1696
|
readonly wcag: '1.3.1';
|
|
1452
|
-
readonly weight:
|
|
1697
|
+
readonly weight: 1;
|
|
1453
1698
|
};
|
|
1454
|
-
readonly
|
|
1455
|
-
readonly summary: '
|
|
1456
|
-
readonly why: 'User cannot get help
|
|
1699
|
+
readonly progressNoText: {
|
|
1700
|
+
readonly summary: 'progress bar not named';
|
|
1701
|
+
readonly why: 'User cannot get help understanding the state of a process';
|
|
1702
|
+
readonly wcag: '4.1.2';
|
|
1703
|
+
readonly weight: 4;
|
|
1704
|
+
};
|
|
1705
|
+
readonly pseudoCodeRisk: {
|
|
1706
|
+
readonly summary: 'pre use dubious';
|
|
1707
|
+
readonly why: 'User may be unable to get help to fully understand the text';
|
|
1457
1708
|
readonly wcag: '1.3.1';
|
|
1458
1709
|
readonly weight: 1;
|
|
1459
1710
|
};
|
|
1460
|
-
readonly
|
|
1461
|
-
readonly summary: '
|
|
1462
|
-
readonly why: 'User
|
|
1711
|
+
readonly pseudoHeadingRisk: {
|
|
1712
|
+
readonly summary: 'heading-like styles dubious';
|
|
1713
|
+
readonly why: 'User may be unable to understand the topic of a part of the page';
|
|
1463
1714
|
readonly wcag: '1.3.1';
|
|
1464
1715
|
readonly weight: 1;
|
|
1465
1716
|
};
|
|
1466
|
-
readonly
|
|
1467
|
-
readonly summary: '
|
|
1468
|
-
readonly why: '
|
|
1717
|
+
readonly pseudoLinkScriptRisk: {
|
|
1718
|
+
readonly summary: 'script used instead of link';
|
|
1719
|
+
readonly why: 'Link may misbehave';
|
|
1469
1720
|
readonly wcag: '1.3.1';
|
|
1470
|
-
readonly weight: 2;
|
|
1471
|
-
};
|
|
1472
|
-
readonly divInTable: {
|
|
1473
|
-
readonly summary: 'div embedded in table';
|
|
1474
|
-
readonly why: 'Blocks of content within a table cell may confuse a user';
|
|
1475
|
-
readonly wcag: '1.4';
|
|
1476
1721
|
readonly weight: 1;
|
|
1477
1722
|
};
|
|
1478
|
-
readonly
|
|
1479
|
-
readonly summary: '
|
|
1480
|
-
readonly why: '
|
|
1481
|
-
readonly wcag: '
|
|
1723
|
+
readonly pseudoLinkUnderlineRisk: {
|
|
1724
|
+
readonly summary: 'underlining dubious';
|
|
1725
|
+
readonly why: 'User may be misled into believing some text is a link';
|
|
1726
|
+
readonly wcag: '1.3.1';
|
|
1482
1727
|
readonly weight: 1;
|
|
1483
1728
|
};
|
|
1484
|
-
readonly
|
|
1485
|
-
readonly summary: '
|
|
1486
|
-
readonly why: '
|
|
1487
|
-
readonly wcag: '
|
|
1729
|
+
readonly pseudoList: {
|
|
1730
|
+
readonly summary: 'list-like br use dubious';
|
|
1731
|
+
readonly why: 'User cannot get help recognizing a list of items';
|
|
1732
|
+
readonly wcag: '1.3.1';
|
|
1488
1733
|
readonly weight: 1;
|
|
1489
1734
|
};
|
|
1490
|
-
readonly
|
|
1491
|
-
readonly summary: '
|
|
1492
|
-
readonly why: '
|
|
1735
|
+
readonly pseudoListRisk: {
|
|
1736
|
+
readonly summary: 'list not marked as such?';
|
|
1737
|
+
readonly why: 'User may be unable to get help on which items are in lists';
|
|
1493
1738
|
readonly wcag: '1.3.1';
|
|
1494
1739
|
readonly weight: 1;
|
|
1495
1740
|
};
|
|
1496
|
-
readonly
|
|
1497
|
-
readonly summary: '
|
|
1498
|
-
readonly why: 'User cannot get help
|
|
1741
|
+
readonly pseudoNavList: {
|
|
1742
|
+
readonly summary: 'nav links not list';
|
|
1743
|
+
readonly why: 'User cannot get help recognizing a list of navigation links';
|
|
1499
1744
|
readonly wcag: '1.3.1';
|
|
1500
|
-
readonly weight:
|
|
1745
|
+
readonly weight: 2;
|
|
1501
1746
|
};
|
|
1502
|
-
readonly
|
|
1503
|
-
readonly summary: '
|
|
1504
|
-
readonly why: 'User
|
|
1505
|
-
readonly wcag: '
|
|
1506
|
-
readonly weight:
|
|
1747
|
+
readonly pseudoOrderedListRisk: {
|
|
1748
|
+
readonly summary: 'ordered list not coded as such?';
|
|
1749
|
+
readonly why: 'User may be unable to get help on whether a list is ordered';
|
|
1750
|
+
readonly wcag: '1.3.1';
|
|
1751
|
+
readonly weight: 1;
|
|
1507
1752
|
};
|
|
1508
|
-
readonly
|
|
1509
|
-
readonly summary: '
|
|
1510
|
-
readonly why: 'User
|
|
1511
|
-
readonly wcag: '
|
|
1753
|
+
readonly pseudoParagraphRisk: {
|
|
1754
|
+
readonly summary: 'double br use dubious';
|
|
1755
|
+
readonly why: 'User may be unable to get help to fully understand the text';
|
|
1756
|
+
readonly wcag: '1.3.1';
|
|
1512
1757
|
readonly weight: 1;
|
|
1513
1758
|
};
|
|
1514
|
-
readonly
|
|
1515
|
-
readonly summary: '
|
|
1516
|
-
readonly why: 'User
|
|
1517
|
-
readonly wcag: '2.4
|
|
1518
|
-
readonly weight: 3;
|
|
1519
|
-
};
|
|
1520
|
-
readonly visibleLabelNotInName: {
|
|
1521
|
-
readonly summary: 'visible label not in name';
|
|
1522
|
-
readonly why: 'User cannot get help choosing a form control to operate';
|
|
1523
|
-
readonly wcag: '2.5.3';
|
|
1524
|
-
readonly weight: 3;
|
|
1525
|
-
};
|
|
1526
|
-
readonly targetSmall: {
|
|
1527
|
-
readonly summary: 'target small';
|
|
1528
|
-
readonly why: 'User cannot reliably choose an item to click or tap';
|
|
1529
|
-
readonly wcag: '2.5.5';
|
|
1759
|
+
readonly pseudoQuoteRisk: {
|
|
1760
|
+
readonly summary: 'quotation miscoded?';
|
|
1761
|
+
readonly why: 'User may be unable to get help identifying a quotation';
|
|
1762
|
+
readonly wcag: '3.2.4';
|
|
1530
1763
|
readonly weight: 1;
|
|
1531
1764
|
};
|
|
1532
|
-
readonly
|
|
1533
|
-
readonly summary: '
|
|
1534
|
-
readonly why: '
|
|
1535
|
-
readonly wcag: '2.
|
|
1536
|
-
readonly weight: 3;
|
|
1537
|
-
};
|
|
1538
|
-
readonly targetsNear: {
|
|
1539
|
-
readonly summary: 'small targets too near to each other';
|
|
1540
|
-
readonly why: 'User cannot reliably choose an item to click or tap';
|
|
1541
|
-
readonly wcag: '2.5.8';
|
|
1765
|
+
readonly refresh: {
|
|
1766
|
+
readonly summary: 'element reloads or redirects';
|
|
1767
|
+
readonly why: 'Document change may surprise a user';
|
|
1768
|
+
readonly wcag: '2.2.1';
|
|
1542
1769
|
readonly weight: 3;
|
|
1543
1770
|
};
|
|
1544
|
-
readonly
|
|
1545
|
-
readonly summary: '
|
|
1546
|
-
readonly why: 'User cannot
|
|
1547
|
-
readonly wcag: '
|
|
1548
|
-
readonly weight: 1;
|
|
1549
|
-
readonly max: 1;
|
|
1550
|
-
};
|
|
1551
|
-
readonly activeEmbedding: {
|
|
1552
|
-
readonly summary: 'control child of link or button';
|
|
1553
|
-
readonly why: 'User cannot reliably choose an item to click or tap';
|
|
1554
|
-
readonly wcag: '2.5.5';
|
|
1771
|
+
readonly regionConfusion: {
|
|
1772
|
+
readonly summary: 'regions not distinctly named';
|
|
1773
|
+
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1774
|
+
readonly wcag: '1.3.6';
|
|
1555
1775
|
readonly weight: 3;
|
|
1556
1776
|
};
|
|
1557
|
-
readonly
|
|
1558
|
-
readonly summary: '
|
|
1559
|
-
readonly why: '
|
|
1560
|
-
readonly wcag: '
|
|
1561
|
-
readonly weight: 4;
|
|
1562
|
-
};
|
|
1563
|
-
readonly focusDiscrepancy: {
|
|
1564
|
-
readonly summary: 'Tab-focusable elements wrong';
|
|
1565
|
-
readonly why: 'Item selections by a keyboard-only user are useless or impossible';
|
|
1566
|
-
readonly wcag: '2.1.1';
|
|
1567
|
-
readonly weight: 4;
|
|
1568
|
-
};
|
|
1569
|
-
readonly focusIndicationBad: {
|
|
1570
|
-
readonly summary: 'focus indication poor';
|
|
1571
|
-
readonly why: 'Keyboard-only user cannot choose an item to operate';
|
|
1572
|
-
readonly wcag: '2.4.7';
|
|
1777
|
+
readonly regionNoText: {
|
|
1778
|
+
readonly summary: 'region not named';
|
|
1779
|
+
readonly why: 'User cannot get help surveying the parts of the page';
|
|
1780
|
+
readonly wcag: '4.1.2';
|
|
1573
1781
|
readonly weight: 4;
|
|
1574
1782
|
};
|
|
1575
|
-
readonly
|
|
1576
|
-
readonly summary: '
|
|
1577
|
-
readonly why: 'Keyboard-only user
|
|
1578
|
-
readonly wcag: '2.4.
|
|
1579
|
-
readonly weight: 2;
|
|
1580
|
-
};
|
|
1581
|
-
readonly focusIndicationRisk: {
|
|
1582
|
-
readonly summary: 'focus indication poor?';
|
|
1583
|
-
readonly why: 'Keyboard-only user cannot choose an item to operate';
|
|
1584
|
-
readonly wcag: '2.4.7';
|
|
1783
|
+
readonly repeatedContentRisk: {
|
|
1784
|
+
readonly summary: 'skip method missing or invalid?';
|
|
1785
|
+
readonly why: 'Keyboard-only user may be unable easily to reach the specific content of the page';
|
|
1786
|
+
readonly wcag: '2.4.1';
|
|
1585
1787
|
readonly weight: 1;
|
|
1788
|
+
readonly max: 2;
|
|
1586
1789
|
};
|
|
1587
|
-
readonly
|
|
1588
|
-
readonly summary: '
|
|
1589
|
-
readonly why: 'User
|
|
1590
|
-
readonly wcag: '
|
|
1591
|
-
readonly weight:
|
|
1790
|
+
readonly requirementBad: {
|
|
1791
|
+
readonly summary: 'requirement invalid';
|
|
1792
|
+
readonly why: 'User may fail to get help determining whether a form item must be completed';
|
|
1793
|
+
readonly wcag: '1.3.5';
|
|
1794
|
+
readonly weight: 4;
|
|
1592
1795
|
};
|
|
1593
|
-
readonly
|
|
1594
|
-
readonly summary: '
|
|
1595
|
-
readonly why: '
|
|
1596
|
-
readonly wcag: '3.
|
|
1796
|
+
readonly requirementRedundant: {
|
|
1797
|
+
readonly summary: 'requirement redundant';
|
|
1798
|
+
readonly why: 'Help determining whether a form item must be completed is at risk of corruption';
|
|
1799
|
+
readonly wcag: '1.3.5';
|
|
1597
1800
|
readonly weight: 1;
|
|
1598
1801
|
};
|
|
1599
|
-
readonly
|
|
1600
|
-
readonly summary: '
|
|
1601
|
-
readonly why: '
|
|
1602
|
-
readonly wcag: '
|
|
1603
|
-
readonly weight:
|
|
1802
|
+
readonly roleBad: {
|
|
1803
|
+
readonly summary: 'role invalid';
|
|
1804
|
+
readonly why: 'User cannot get help on the nature of an item';
|
|
1805
|
+
readonly wcag: '4.1.2';
|
|
1806
|
+
readonly weight: 3;
|
|
1604
1807
|
};
|
|
1605
|
-
readonly
|
|
1606
|
-
readonly summary: '
|
|
1607
|
-
readonly why: '
|
|
1608
|
-
readonly wcag: '
|
|
1808
|
+
readonly roleConfusion: {
|
|
1809
|
+
readonly summary: 'role assigned instead of implicit';
|
|
1810
|
+
readonly why: 'User may misunderstand the purpose of an item';
|
|
1811
|
+
readonly wcag: '4.1.2';
|
|
1609
1812
|
readonly weight: 1;
|
|
1610
1813
|
};
|
|
1611
|
-
readonly
|
|
1612
|
-
readonly summary: '
|
|
1613
|
-
readonly why: 'User
|
|
1614
|
-
readonly wcag: '1.
|
|
1615
|
-
readonly weight:
|
|
1616
|
-
readonly max: 1;
|
|
1814
|
+
readonly roleHierarchyBad: {
|
|
1815
|
+
readonly summary: 'ancestor and descendant roles incompatible';
|
|
1816
|
+
readonly why: 'User may misunderstand or be blocked from exposure to an item';
|
|
1817
|
+
readonly wcag: '4.1.2';
|
|
1818
|
+
readonly weight: 4;
|
|
1617
1819
|
};
|
|
1618
|
-
readonly
|
|
1619
|
-
readonly summary: '
|
|
1620
|
-
readonly why: '
|
|
1621
|
-
readonly wcag: '1.
|
|
1622
|
-
readonly weight:
|
|
1820
|
+
readonly roleMissing: {
|
|
1821
|
+
readonly summary: 'role missing';
|
|
1822
|
+
readonly why: 'Item behaves improperly';
|
|
1823
|
+
readonly wcag: '4.1.2';
|
|
1824
|
+
readonly weight: 3;
|
|
1623
1825
|
};
|
|
1624
|
-
readonly
|
|
1625
|
-
readonly summary: '
|
|
1626
|
-
readonly why: '
|
|
1627
|
-
readonly wcag: '1.
|
|
1826
|
+
readonly roleMissingRisk: {
|
|
1827
|
+
readonly summary: 'role missing?';
|
|
1828
|
+
readonly why: 'Item may behave improperly';
|
|
1829
|
+
readonly wcag: '4.1.2';
|
|
1628
1830
|
readonly weight: 1;
|
|
1629
1831
|
};
|
|
1630
|
-
readonly
|
|
1631
|
-
readonly summary: '
|
|
1632
|
-
readonly why: 'User cannot get help
|
|
1633
|
-
readonly wcag: '1.
|
|
1634
|
-
readonly weight:
|
|
1832
|
+
readonly roleNoText: {
|
|
1833
|
+
readonly summary: 'no role-required name';
|
|
1834
|
+
readonly why: 'User cannot get help understanding an item';
|
|
1835
|
+
readonly wcag: '4.1.2';
|
|
1836
|
+
readonly weight: 4;
|
|
1635
1837
|
};
|
|
1636
|
-
readonly
|
|
1637
|
-
readonly summary: '
|
|
1638
|
-
readonly why: '
|
|
1639
|
-
readonly wcag: '1.
|
|
1640
|
-
readonly weight:
|
|
1838
|
+
readonly roleRedundant: {
|
|
1839
|
+
readonly summary: 'role redundant';
|
|
1840
|
+
readonly why: 'Document includes unnecessary code';
|
|
1841
|
+
readonly wcag: '4.1.2';
|
|
1842
|
+
readonly weight: 1;
|
|
1641
1843
|
};
|
|
1642
|
-
readonly
|
|
1643
|
-
readonly summary: '
|
|
1644
|
-
readonly why: '
|
|
1645
|
-
readonly wcag: '1
|
|
1844
|
+
readonly scriptBanned: {
|
|
1845
|
+
readonly summary: 'script prohibited';
|
|
1846
|
+
readonly why: 'Browser processes the page improperly';
|
|
1847
|
+
readonly wcag: '4.1';
|
|
1646
1848
|
readonly weight: 3;
|
|
1647
1849
|
};
|
|
1648
|
-
readonly
|
|
1649
|
-
readonly summary: '
|
|
1650
|
-
readonly why: '
|
|
1651
|
-
readonly wcag: '1.3.
|
|
1652
|
-
readonly weight:
|
|
1653
|
-
readonly max: 1;
|
|
1654
|
-
};
|
|
1655
|
-
readonly mainNot1: {
|
|
1656
|
-
readonly summary: 'multiple mains';
|
|
1657
|
-
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1658
|
-
readonly wcag: '1.3.6';
|
|
1659
|
-
readonly weight: 2;
|
|
1660
|
-
readonly max: 1;
|
|
1661
|
-
};
|
|
1662
|
-
readonly bannerNot1: {
|
|
1663
|
-
readonly summary: 'multiple banners';
|
|
1664
|
-
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1665
|
-
readonly wcag: '1.3.6';
|
|
1666
|
-
readonly weight: 2;
|
|
1667
|
-
readonly max: 1;
|
|
1850
|
+
readonly scriptElementBad: {
|
|
1851
|
+
readonly summary: 'script element invalid';
|
|
1852
|
+
readonly why: 'Browser processes the page improperly';
|
|
1853
|
+
readonly wcag: '1.3.1';
|
|
1854
|
+
readonly weight: 4;
|
|
1668
1855
|
};
|
|
1669
|
-
readonly
|
|
1670
|
-
readonly summary: '
|
|
1671
|
-
readonly why: '
|
|
1672
|
-
readonly wcag: '1.3.
|
|
1673
|
-
readonly weight:
|
|
1856
|
+
readonly scriptNotDeferrable: {
|
|
1857
|
+
readonly summary: 'script element invalidly deferred';
|
|
1858
|
+
readonly why: 'Browser processes the page improperly';
|
|
1859
|
+
readonly wcag: '1.3.1';
|
|
1860
|
+
readonly weight: 4;
|
|
1674
1861
|
};
|
|
1675
|
-
readonly
|
|
1676
|
-
readonly summary: '
|
|
1677
|
-
readonly why: 'User
|
|
1678
|
-
readonly wcag: '1.
|
|
1862
|
+
readonly scrollFocus: {
|
|
1863
|
+
readonly summary: 'scrollable element and children nonfocusable';
|
|
1864
|
+
readonly why: 'User may be unable to see all of an item without scrolling in both dimensions';
|
|
1865
|
+
readonly wcag: '2.1.1';
|
|
1679
1866
|
readonly weight: 3;
|
|
1680
1867
|
};
|
|
1681
|
-
readonly
|
|
1682
|
-
readonly summary: '
|
|
1683
|
-
readonly why: 'User
|
|
1684
|
-
readonly wcag: '1.
|
|
1685
|
-
readonly weight:
|
|
1686
|
-
readonly max: 1;
|
|
1687
|
-
};
|
|
1688
|
-
readonly landmarkConfusion: {
|
|
1689
|
-
readonly summary: 'landmarks not distinctly named';
|
|
1690
|
-
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1691
|
-
readonly wcag: '1.3.6';
|
|
1692
|
-
readonly weight: 3;
|
|
1868
|
+
readonly scrollRisk: {
|
|
1869
|
+
readonly summary: 'container size unit not percentage';
|
|
1870
|
+
readonly why: 'User may be unable to see all of an item without scrolling in both dimensions';
|
|
1871
|
+
readonly wcag: '1.4.10';
|
|
1872
|
+
readonly weight: 1;
|
|
1693
1873
|
};
|
|
1694
|
-
readonly
|
|
1695
|
-
readonly summary: '
|
|
1874
|
+
readonly searchConfusion: {
|
|
1875
|
+
readonly summary: 'searches not distinctly named';
|
|
1696
1876
|
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1697
1877
|
readonly wcag: '1.3.6';
|
|
1698
1878
|
readonly weight: 3;
|
|
1699
1879
|
};
|
|
1700
|
-
readonly
|
|
1701
|
-
readonly summary: '
|
|
1702
|
-
readonly why: 'User cannot
|
|
1703
|
-
readonly wcag: '
|
|
1704
|
-
readonly weight:
|
|
1705
|
-
};
|
|
1706
|
-
readonly formConfusion: {
|
|
1707
|
-
readonly summary: 'forms not distinctly named';
|
|
1708
|
-
readonly why: 'User cannot get help on how some of the page is organized';
|
|
1709
|
-
readonly wcag: '1.3.6';
|
|
1710
|
-
readonly weight: 3;
|
|
1880
|
+
readonly sectionHeadingless: {
|
|
1881
|
+
readonly summary: 'section heading missing';
|
|
1882
|
+
readonly why: 'User cannot understand the topic of a part of the page';
|
|
1883
|
+
readonly wcag: '1.3.1';
|
|
1884
|
+
readonly weight: 1;
|
|
1711
1885
|
};
|
|
1712
|
-
readonly
|
|
1713
|
-
readonly summary: '
|
|
1714
|
-
readonly why: 'User cannot
|
|
1715
|
-
readonly wcag: '1.
|
|
1886
|
+
readonly selectBad: {
|
|
1887
|
+
readonly summary: 'select element invalid';
|
|
1888
|
+
readonly why: 'User cannot properly select among options';
|
|
1889
|
+
readonly wcag: '4.1.2';
|
|
1716
1890
|
readonly weight: 4;
|
|
1717
1891
|
};
|
|
1718
|
-
readonly
|
|
1719
|
-
readonly summary: '
|
|
1720
|
-
readonly why: 'User
|
|
1721
|
-
readonly wcag: '1.3.
|
|
1722
|
-
readonly weight:
|
|
1892
|
+
readonly selectFlatRisk: {
|
|
1893
|
+
readonly summary: 'option groups not marked?';
|
|
1894
|
+
readonly why: 'User may be unable to get help recognizing groups of options';
|
|
1895
|
+
readonly wcag: '1.3.1';
|
|
1896
|
+
readonly weight: 1;
|
|
1723
1897
|
};
|
|
1724
|
-
readonly
|
|
1725
|
-
readonly summary: '
|
|
1726
|
-
readonly why: '
|
|
1727
|
-
readonly wcag: '
|
|
1728
|
-
readonly weight:
|
|
1898
|
+
readonly selectNavSurpriseRisk: {
|
|
1899
|
+
readonly summary: 'navigating selection-change action unstated?';
|
|
1900
|
+
readonly why: 'Changing a selected option opens a new window, possibly surprising a user';
|
|
1901
|
+
readonly wcag: '3.2.5';
|
|
1902
|
+
readonly weight: 1;
|
|
1729
1903
|
};
|
|
1730
|
-
readonly
|
|
1731
|
-
readonly summary: '
|
|
1732
|
-
readonly why: 'User cannot get help on
|
|
1733
|
-
readonly wcag: '1.
|
|
1904
|
+
readonly selectNoText: {
|
|
1905
|
+
readonly summary: 'select not named';
|
|
1906
|
+
readonly why: 'User cannot get help on the topic of a list of options';
|
|
1907
|
+
readonly wcag: '4.1.2';
|
|
1734
1908
|
readonly weight: 3;
|
|
1735
1909
|
};
|
|
1736
|
-
readonly
|
|
1737
|
-
readonly summary: '
|
|
1738
|
-
readonly why: '
|
|
1739
|
-
readonly wcag: '1.
|
|
1740
|
-
readonly weight:
|
|
1910
|
+
readonly sensoryDependenceRisk: {
|
|
1911
|
+
readonly summary: 'instruction requires particular sense?';
|
|
1912
|
+
readonly why: 'Content is impossible to perceive under some conditions';
|
|
1913
|
+
readonly wcag: '1.4.1';
|
|
1914
|
+
readonly weight: 1;
|
|
1741
1915
|
};
|
|
1742
|
-
readonly
|
|
1743
|
-
readonly summary: '
|
|
1744
|
-
readonly why: '
|
|
1745
|
-
readonly wcag: '1.3.
|
|
1916
|
+
readonly sizesAttributeBad: {
|
|
1917
|
+
readonly summary: 'sizes attribute invalid';
|
|
1918
|
+
readonly why: 'Item behaves improperly';
|
|
1919
|
+
readonly wcag: '1.3.1';
|
|
1746
1920
|
readonly weight: 4;
|
|
1747
1921
|
};
|
|
1748
|
-
readonly
|
|
1749
|
-
readonly summary: '
|
|
1750
|
-
readonly why: '
|
|
1751
|
-
readonly wcag: '
|
|
1922
|
+
readonly skipRepeatedContent: {
|
|
1923
|
+
readonly summary: 'skip method missing or invalid';
|
|
1924
|
+
readonly why: 'Keyboard-only user cannot easily reach the specific content of the page';
|
|
1925
|
+
readonly wcag: '2.4.1';
|
|
1752
1926
|
readonly weight: 3;
|
|
1927
|
+
readonly max: 2;
|
|
1753
1928
|
};
|
|
1754
|
-
readonly
|
|
1755
|
-
readonly summary: '
|
|
1756
|
-
readonly why: '
|
|
1757
|
-
readonly wcag: '1.3.
|
|
1758
|
-
readonly weight:
|
|
1929
|
+
readonly sourceEmpty: {
|
|
1930
|
+
readonly summary: 'src empty';
|
|
1931
|
+
readonly why: 'Image, audio, or video to be shown cannot be found';
|
|
1932
|
+
readonly wcag: '1.3.1';
|
|
1933
|
+
readonly weight: 4;
|
|
1759
1934
|
};
|
|
1760
|
-
readonly
|
|
1761
|
-
readonly summary: '
|
|
1762
|
-
readonly why: '
|
|
1763
|
-
readonly wcag: '1.3.
|
|
1935
|
+
readonly specRulesScriptBad: {
|
|
1936
|
+
readonly summary: 'speculation rules script element invalid';
|
|
1937
|
+
readonly why: 'Document navigation performs poorly';
|
|
1938
|
+
readonly wcag: '1.3.1';
|
|
1764
1939
|
readonly weight: 1;
|
|
1765
1940
|
};
|
|
1766
|
-
readonly
|
|
1767
|
-
readonly summary: '
|
|
1768
|
-
readonly why: '
|
|
1769
|
-
readonly wcag: '
|
|
1770
|
-
readonly weight:
|
|
1941
|
+
readonly spontaneousMotion: {
|
|
1942
|
+
readonly summary: 'page content moves spontaneously';
|
|
1943
|
+
readonly why: 'Motion-sensitive user may suffer harm';
|
|
1944
|
+
readonly wcag: '2.2.2';
|
|
1945
|
+
readonly weight: 2;
|
|
1946
|
+
readonly max: 1;
|
|
1771
1947
|
};
|
|
1772
|
-
readonly
|
|
1773
|
-
readonly summary: '
|
|
1774
|
-
readonly why: '
|
|
1775
|
-
readonly wcag: '
|
|
1948
|
+
readonly stylesheetBanned: {
|
|
1949
|
+
readonly summary: 'stylesheet prohibited';
|
|
1950
|
+
readonly why: 'Browser displays the page improperly';
|
|
1951
|
+
readonly wcag: '1.4';
|
|
1776
1952
|
readonly weight: 3;
|
|
1777
1953
|
};
|
|
1778
|
-
readonly
|
|
1779
|
-
readonly summary: '
|
|
1780
|
-
readonly why: '
|
|
1781
|
-
readonly wcag: '
|
|
1954
|
+
readonly submitButton: {
|
|
1955
|
+
readonly summary: 'form submission button missing';
|
|
1956
|
+
readonly why: 'User cannot easily submit a form';
|
|
1957
|
+
readonly wcag: '3.2.2';
|
|
1782
1958
|
readonly weight: 3;
|
|
1783
1959
|
};
|
|
1784
|
-
readonly
|
|
1785
|
-
readonly summary: '
|
|
1786
|
-
readonly why: '
|
|
1787
|
-
readonly wcag: '
|
|
1960
|
+
readonly svgImageNoText: {
|
|
1961
|
+
readonly summary: 'svg image not named';
|
|
1962
|
+
readonly why: 'User cannot get help understanding an image';
|
|
1963
|
+
readonly wcag: '1.1.1';
|
|
1788
1964
|
readonly weight: 4;
|
|
1789
1965
|
};
|
|
1790
|
-
readonly
|
|
1791
|
-
readonly summary: '
|
|
1792
|
-
readonly why: '
|
|
1793
|
-
readonly wcag: '1.
|
|
1794
|
-
readonly weight: 3;
|
|
1795
|
-
};
|
|
1796
|
-
readonly focusableDescendants: {
|
|
1797
|
-
readonly summary: 'presentational child focusable';
|
|
1798
|
-
readonly why: 'Keyboard-only user cannot navigate properly to the operable items';
|
|
1799
|
-
readonly wcag: '4.1.2';
|
|
1966
|
+
readonly svgLabelID: {
|
|
1967
|
+
readonly summary: 'svg label referent invalid';
|
|
1968
|
+
readonly why: 'User cannot get help understanding an image';
|
|
1969
|
+
readonly wcag: '1.1.1';
|
|
1800
1970
|
readonly weight: 4;
|
|
1801
1971
|
};
|
|
1802
|
-
readonly
|
|
1803
|
-
readonly summary: '
|
|
1804
|
-
readonly why: 'User cannot get help
|
|
1805
|
-
readonly wcag: '
|
|
1972
|
+
readonly svgNoText: {
|
|
1973
|
+
readonly summary: 'SVG image not named';
|
|
1974
|
+
readonly why: 'User cannot get help to know what is in an image';
|
|
1975
|
+
readonly wcag: '1.1.1';
|
|
1806
1976
|
readonly weight: 4;
|
|
1807
1977
|
};
|
|
1808
|
-
readonly
|
|
1809
|
-
readonly summary: '
|
|
1810
|
-
readonly why: '
|
|
1978
|
+
readonly svgNotValidatable: {
|
|
1979
|
+
readonly summary: 'SVG version not 1.1';
|
|
1980
|
+
readonly why: 'Item prevents testing image for accessibility';
|
|
1981
|
+
readonly wcag: '4.1';
|
|
1982
|
+
readonly weight: 1;
|
|
1983
|
+
};
|
|
1984
|
+
readonly tabIndexEmpty: {
|
|
1985
|
+
readonly summary: 'tabindex empty';
|
|
1986
|
+
readonly why: 'Keyboard-only user cannot follow the intended navigation sequence';
|
|
1811
1987
|
readonly wcag: '1.3.1';
|
|
1812
1988
|
readonly weight: 4;
|
|
1813
1989
|
};
|
|
1814
|
-
readonly
|
|
1815
|
-
readonly summary: '
|
|
1816
|
-
readonly why: '
|
|
1990
|
+
readonly tabIndexExtra: {
|
|
1991
|
+
readonly summary: 'tabindex redundant';
|
|
1992
|
+
readonly why: 'Revision risks interfering with navigation by a keyboard-only user';
|
|
1817
1993
|
readonly wcag: '1.3.1';
|
|
1818
1994
|
readonly weight: 1;
|
|
1819
1995
|
};
|
|
1820
|
-
readonly
|
|
1821
|
-
readonly summary: '
|
|
1822
|
-
readonly why: '
|
|
1823
|
-
readonly wcag: '
|
|
1996
|
+
readonly tabIndexInt: {
|
|
1997
|
+
readonly summary: 'tabindex not integer';
|
|
1998
|
+
readonly why: 'Keyboard-only user cannot follow the intended navigation sequence';
|
|
1999
|
+
readonly wcag: '1.3.1';
|
|
1824
2000
|
readonly weight: 4;
|
|
1825
|
-
readonly max: 1;
|
|
1826
2001
|
};
|
|
1827
|
-
readonly
|
|
1828
|
-
readonly summary: '
|
|
1829
|
-
readonly why: '
|
|
1830
|
-
readonly wcag: '2.4.
|
|
2002
|
+
readonly tabIndexPositive: {
|
|
2003
|
+
readonly summary: 'tabindex positive';
|
|
2004
|
+
readonly why: 'Keyboard-only user cannot predict the navigation sequence';
|
|
2005
|
+
readonly wcag: '2.4.3';
|
|
2006
|
+
readonly weight: 1;
|
|
2007
|
+
};
|
|
2008
|
+
readonly tableBody: {
|
|
2009
|
+
readonly summary: 'tbody missing';
|
|
2010
|
+
readonly why: 'User cannot get help on parts of a table';
|
|
2011
|
+
readonly wcag: '1.3.1';
|
|
2012
|
+
readonly weight: 1;
|
|
2013
|
+
};
|
|
2014
|
+
readonly tableCapSum: {
|
|
2015
|
+
readonly summary: 'table summary duplicative';
|
|
2016
|
+
readonly why: 'Helper informs a user repetitively about the topic of a table';
|
|
2017
|
+
readonly wcag: '1.3.1';
|
|
2018
|
+
readonly weight: 2;
|
|
2019
|
+
};
|
|
2020
|
+
readonly tableCaption: {
|
|
2021
|
+
readonly summary: 'table caption missing';
|
|
2022
|
+
readonly why: 'User cannot get help on the topic of a table';
|
|
2023
|
+
readonly wcag: '1.3.1';
|
|
1831
2024
|
readonly weight: 1;
|
|
1832
2025
|
};
|
|
1833
|
-
readonly
|
|
1834
|
-
readonly summary: '
|
|
1835
|
-
readonly why: '
|
|
1836
|
-
readonly wcag: '
|
|
2026
|
+
readonly tableCaptionLoc: {
|
|
2027
|
+
readonly summary: 'table caption location invalid';
|
|
2028
|
+
readonly why: 'User cannot get help on the topic of a table';
|
|
2029
|
+
readonly wcag: '1.3.1';
|
|
1837
2030
|
readonly weight: 3;
|
|
1838
2031
|
};
|
|
1839
|
-
readonly
|
|
1840
|
-
readonly summary: '
|
|
1841
|
-
readonly why: '
|
|
1842
|
-
readonly wcag: '
|
|
1843
|
-
readonly weight: 2;
|
|
1844
|
-
};
|
|
1845
|
-
readonly hoverIndication: {
|
|
1846
|
-
readonly summary: 'hover indication poor';
|
|
1847
|
-
readonly why: 'User cannot explore the page reliably with a mouse';
|
|
1848
|
-
readonly wcag: '3.3.2';
|
|
2032
|
+
readonly tableCellHeaderless: {
|
|
2033
|
+
readonly summary: 'table-cell header missing';
|
|
2034
|
+
readonly why: 'User cannot get help on the topic of a table cell';
|
|
2035
|
+
readonly wcag: '1.3.1';
|
|
1849
2036
|
readonly weight: 3;
|
|
1850
2037
|
};
|
|
1851
|
-
readonly
|
|
1852
|
-
readonly summary: '
|
|
1853
|
-
readonly why: 'User cannot
|
|
1854
|
-
readonly wcag: '3.
|
|
1855
|
-
readonly weight:
|
|
2038
|
+
readonly tableColumnsVary: {
|
|
2039
|
+
readonly summary: 'table column counts vary';
|
|
2040
|
+
readonly why: 'User cannot get help on the dimensions of a table';
|
|
2041
|
+
readonly wcag: '1.3.1';
|
|
2042
|
+
readonly weight: 3;
|
|
1856
2043
|
};
|
|
1857
|
-
readonly
|
|
1858
|
-
readonly summary: '
|
|
1859
|
-
readonly why: 'User
|
|
1860
|
-
readonly wcag: '3.
|
|
1861
|
-
readonly weight:
|
|
2044
|
+
readonly tableDescriptionID: {
|
|
2045
|
+
readonly summary: 'table aria-describedby invalid';
|
|
2046
|
+
readonly why: 'User cannot get help on the topic of a table';
|
|
2047
|
+
readonly wcag: '1.3.1';
|
|
2048
|
+
readonly weight: 4;
|
|
1862
2049
|
};
|
|
1863
|
-
readonly
|
|
1864
|
-
readonly summary: '
|
|
1865
|
-
readonly why: 'User cannot get
|
|
2050
|
+
readonly tableEmbedded: {
|
|
2051
|
+
readonly summary: 'table embedded in table';
|
|
2052
|
+
readonly why: 'User cannot get help on relationships in a table';
|
|
1866
2053
|
readonly wcag: '1.3.1';
|
|
1867
2054
|
readonly weight: 2;
|
|
1868
2055
|
};
|
|
1869
|
-
readonly
|
|
1870
|
-
readonly summary: '
|
|
1871
|
-
readonly why: 'User cannot get
|
|
2056
|
+
readonly tableHead: {
|
|
2057
|
+
readonly summary: 'thead missing';
|
|
2058
|
+
readonly why: 'User cannot get help on parts of a table';
|
|
1872
2059
|
readonly wcag: '1.3.1';
|
|
1873
2060
|
readonly weight: 1;
|
|
1874
2061
|
};
|
|
1875
|
-
readonly
|
|
1876
|
-
readonly summary: '
|
|
1877
|
-
readonly why: 'User cannot get help on
|
|
2062
|
+
readonly tableHeaderCellless: {
|
|
2063
|
+
readonly summary: 'table-header cell missing';
|
|
2064
|
+
readonly why: 'User cannot get help on relationships in a table';
|
|
1878
2065
|
readonly wcag: '1.3.1';
|
|
1879
|
-
readonly weight:
|
|
2066
|
+
readonly weight: 4;
|
|
1880
2067
|
};
|
|
1881
|
-
readonly
|
|
1882
|
-
readonly summary: '
|
|
1883
|
-
readonly why: 'User
|
|
1884
|
-
readonly wcag: '
|
|
1885
|
-
readonly weight:
|
|
2068
|
+
readonly tableHeaderEmpty: {
|
|
2069
|
+
readonly summary: 'table header empty';
|
|
2070
|
+
readonly why: 'User cannot get help on relationships in a table';
|
|
2071
|
+
readonly wcag: '1.3.1';
|
|
2072
|
+
readonly weight: 2;
|
|
1886
2073
|
};
|
|
1887
|
-
readonly
|
|
1888
|
-
readonly summary: '
|
|
1889
|
-
readonly why: 'User
|
|
1890
|
-
readonly wcag: '
|
|
1891
|
-
readonly weight:
|
|
2074
|
+
readonly tableHeaderless: {
|
|
2075
|
+
readonly summary: 'table headers missing';
|
|
2076
|
+
readonly why: 'User cannot get help on relationships in a table';
|
|
2077
|
+
readonly wcag: '1.3.1';
|
|
2078
|
+
readonly weight: 3;
|
|
1892
2079
|
};
|
|
1893
|
-
readonly
|
|
1894
|
-
readonly summary: '
|
|
1895
|
-
readonly why: 'User may
|
|
1896
|
-
readonly wcag: '
|
|
2080
|
+
readonly TableHeaderScopeRisk: {
|
|
2081
|
+
readonly summary: 'Table scope ambiguous?';
|
|
2082
|
+
readonly why: 'User may be unable to get help on relationships in a table';
|
|
2083
|
+
readonly wcag: '1.3.1';
|
|
1897
2084
|
readonly weight: 1;
|
|
1898
2085
|
};
|
|
1899
|
-
readonly
|
|
1900
|
-
readonly summary: '
|
|
1901
|
-
readonly why: '
|
|
1902
|
-
readonly wcag: '1.3.
|
|
2086
|
+
readonly tableHeading: {
|
|
2087
|
+
readonly summary: 'heading located in table';
|
|
2088
|
+
readonly why: 'Complex relationships in a table may confuse a user';
|
|
2089
|
+
readonly wcag: '1.3.1';
|
|
1903
2090
|
readonly weight: 1;
|
|
1904
2091
|
};
|
|
1905
|
-
readonly
|
|
1906
|
-
readonly summary: '
|
|
1907
|
-
readonly why: 'User cannot
|
|
1908
|
-
readonly wcag: '1.3.
|
|
1909
|
-
readonly weight:
|
|
1910
|
-
};
|
|
1911
|
-
readonly menuNavigation: {
|
|
1912
|
-
readonly summary: 'menu navigation nonstandard';
|
|
1913
|
-
readonly why: 'Menus behave improperly for a keyboard-only user';
|
|
1914
|
-
readonly wcag: '2.1.1';
|
|
1915
|
-
readonly weight: 2;
|
|
2092
|
+
readonly tableLabelID: {
|
|
2093
|
+
readonly summary: 'table aria-labelledby invalid';
|
|
2094
|
+
readonly why: 'User cannot get help on the topic of a table';
|
|
2095
|
+
readonly wcag: '1.3.1';
|
|
2096
|
+
readonly weight: 4;
|
|
1916
2097
|
};
|
|
1917
|
-
readonly
|
|
1918
|
-
readonly summary: '
|
|
1919
|
-
readonly why: 'User cannot
|
|
2098
|
+
readonly tableSum: {
|
|
2099
|
+
readonly summary: 'table summary empty';
|
|
2100
|
+
readonly why: 'User cannot get help summarizing a table';
|
|
1920
2101
|
readonly wcag: '1.3.1';
|
|
1921
2102
|
readonly weight: 4;
|
|
1922
2103
|
};
|
|
@@ -1926,131 +2107,118 @@ declare const issuesData: {
|
|
|
1926
2107
|
readonly wcag: '2.1.1';
|
|
1927
2108
|
readonly weight: 2;
|
|
1928
2109
|
};
|
|
1929
|
-
readonly
|
|
1930
|
-
readonly summary: '
|
|
1931
|
-
readonly why: '
|
|
1932
|
-
readonly wcag: '
|
|
1933
|
-
readonly weight: 2;
|
|
1934
|
-
readonly max: 1;
|
|
1935
|
-
};
|
|
1936
|
-
readonly animationLong: {
|
|
1937
|
-
readonly summary: 'animation long or repetitive';
|
|
1938
|
-
readonly why: 'Motion-sensitive user may suffer harm';
|
|
1939
|
-
readonly wcag: '2.2.2';
|
|
2110
|
+
readonly tabularTableless: {
|
|
2111
|
+
readonly summary: 'table not marked as such';
|
|
2112
|
+
readonly why: 'Helper misinforms a user about whether items are cells of a table';
|
|
2113
|
+
readonly wcag: '1.3.1';
|
|
1940
2114
|
readonly weight: 3;
|
|
1941
2115
|
};
|
|
1942
|
-
readonly
|
|
1943
|
-
readonly summary: '
|
|
1944
|
-
readonly why: '
|
|
1945
|
-
readonly wcag: '
|
|
2116
|
+
readonly targetEmpty: {
|
|
2117
|
+
readonly summary: 'target empty';
|
|
2118
|
+
readonly why: 'Item is displayed improperly';
|
|
2119
|
+
readonly wcag: '1.3.1';
|
|
1946
2120
|
readonly weight: 4;
|
|
1947
2121
|
};
|
|
1948
|
-
readonly
|
|
1949
|
-
readonly summary: '
|
|
1950
|
-
readonly why: '
|
|
1951
|
-
readonly wcag: '
|
|
1952
|
-
readonly weight:
|
|
1953
|
-
};
|
|
1954
|
-
readonly autoplayLong: {
|
|
1955
|
-
readonly summary: 'autoplay long';
|
|
1956
|
-
readonly why: 'Motion- or noise-sensitive user may suffer harm';
|
|
1957
|
-
readonly wcag: '1.4.2';
|
|
1958
|
-
readonly weight: 2;
|
|
2122
|
+
readonly targetSmall: {
|
|
2123
|
+
readonly summary: 'target small';
|
|
2124
|
+
readonly why: 'User cannot reliably choose an item to click or tap';
|
|
2125
|
+
readonly wcag: '2.5.5';
|
|
2126
|
+
readonly weight: 1;
|
|
1959
2127
|
};
|
|
1960
|
-
readonly
|
|
1961
|
-
readonly summary: '
|
|
1962
|
-
readonly why: '
|
|
1963
|
-
readonly wcag: '
|
|
1964
|
-
readonly weight:
|
|
2128
|
+
readonly targetsNear: {
|
|
2129
|
+
readonly summary: 'small targets too near to each other';
|
|
2130
|
+
readonly why: 'User cannot reliably choose an item to click or tap';
|
|
2131
|
+
readonly wcag: '2.5.8';
|
|
2132
|
+
readonly weight: 3;
|
|
1965
2133
|
};
|
|
1966
|
-
readonly
|
|
1967
|
-
readonly summary: '
|
|
1968
|
-
readonly why: '
|
|
1969
|
-
readonly wcag: '2.
|
|
2134
|
+
readonly targetTiny: {
|
|
2135
|
+
readonly summary: 'target very small';
|
|
2136
|
+
readonly why: 'User cannot reliably choose an item to click or tap';
|
|
2137
|
+
readonly wcag: '2.5.8';
|
|
1970
2138
|
readonly weight: 3;
|
|
1971
2139
|
};
|
|
1972
|
-
readonly
|
|
1973
|
-
readonly summary: '
|
|
1974
|
-
readonly why: 'User cannot
|
|
2140
|
+
readonly textAreaNoText: {
|
|
2141
|
+
readonly summary: 'text area not named';
|
|
2142
|
+
readonly why: 'User cannot get help on what information to enter in a form item';
|
|
1975
2143
|
readonly wcag: '1.3.1';
|
|
1976
2144
|
readonly weight: 4;
|
|
1977
2145
|
};
|
|
1978
|
-
readonly
|
|
1979
|
-
readonly summary: '
|
|
1980
|
-
readonly why: 'User
|
|
1981
|
-
readonly wcag: '
|
|
1982
|
-
readonly weight:
|
|
2146
|
+
readonly textContentBad: {
|
|
2147
|
+
readonly summary: 'element text content invalid';
|
|
2148
|
+
readonly why: 'User may be unable to read all the page text';
|
|
2149
|
+
readonly wcag: '4.1';
|
|
2150
|
+
readonly weight: 3;
|
|
1983
2151
|
};
|
|
1984
|
-
readonly
|
|
1985
|
-
readonly summary: '
|
|
1986
|
-
readonly why: '
|
|
1987
|
-
readonly wcag: '1.
|
|
2152
|
+
readonly textDistortion: {
|
|
2153
|
+
readonly summary: 'text distortion';
|
|
2154
|
+
readonly why: 'Text is difficult to read';
|
|
2155
|
+
readonly wcag: '3.1.5';
|
|
1988
2156
|
readonly weight: 1;
|
|
1989
2157
|
};
|
|
1990
|
-
readonly
|
|
1991
|
-
readonly summary: '
|
|
1992
|
-
readonly why: '
|
|
1993
|
-
readonly wcag: '2.4.
|
|
1994
|
-
readonly weight:
|
|
2158
|
+
readonly titleAsLabel: {
|
|
2159
|
+
readonly summary: 'control has title instead of label';
|
|
2160
|
+
readonly why: 'User cannot get help on how to operate a form item';
|
|
2161
|
+
readonly wcag: '2.4.6';
|
|
2162
|
+
readonly weight: 3;
|
|
1995
2163
|
};
|
|
1996
|
-
readonly
|
|
1997
|
-
readonly summary: '
|
|
1998
|
-
readonly why: '
|
|
2164
|
+
readonly titleBad: {
|
|
2165
|
+
readonly summary: 'title attribute invalid';
|
|
2166
|
+
readonly why: 'User gets too little, too much, or repeated help explaining an item';
|
|
1999
2167
|
readonly wcag: '1.3.1';
|
|
2000
|
-
readonly weight:
|
|
2168
|
+
readonly weight: 1;
|
|
2001
2169
|
};
|
|
2002
|
-
readonly
|
|
2003
|
-
readonly summary: '
|
|
2004
|
-
readonly why: '
|
|
2170
|
+
readonly titleEmpty: {
|
|
2171
|
+
readonly summary: 'title attribute empty';
|
|
2172
|
+
readonly why: 'Hovering does not get the promised explanation of an item';
|
|
2005
2173
|
readonly wcag: '1.3.1';
|
|
2006
|
-
readonly weight:
|
|
2174
|
+
readonly weight: 1;
|
|
2007
2175
|
};
|
|
2008
|
-
readonly
|
|
2009
|
-
readonly summary: '
|
|
2010
|
-
readonly why: '
|
|
2176
|
+
readonly titleLong: {
|
|
2177
|
+
readonly summary: 'title long';
|
|
2178
|
+
readonly why: 'Hovering makes an overly verbose explanation pop up';
|
|
2179
|
+
readonly wcag: '3.1.5';
|
|
2180
|
+
readonly weight: 2;
|
|
2181
|
+
};
|
|
2182
|
+
readonly titleNotText: {
|
|
2183
|
+
readonly summary: 'title contains ASCII art';
|
|
2184
|
+
readonly why: 'Hovering makes a hard-to-understand explanation pop up';
|
|
2185
|
+
readonly wcag: '3.1.5';
|
|
2186
|
+
readonly weight: 2;
|
|
2187
|
+
};
|
|
2188
|
+
readonly titleRedundant: {
|
|
2189
|
+
readonly summary: 'title attribute redundant';
|
|
2190
|
+
readonly why: 'Helper repeats the explanation of an item';
|
|
2011
2191
|
readonly wcag: '1.3.1';
|
|
2012
2192
|
readonly weight: 1;
|
|
2013
2193
|
};
|
|
2014
|
-
readonly
|
|
2015
|
-
readonly summary: '
|
|
2016
|
-
readonly why: '
|
|
2194
|
+
readonly typeBad: {
|
|
2195
|
+
readonly summary: 'type invalid';
|
|
2196
|
+
readonly why: 'Document styles are at risk of corruption';
|
|
2017
2197
|
readonly wcag: '1.3.1';
|
|
2018
|
-
readonly weight:
|
|
2198
|
+
readonly weight: 4;
|
|
2019
2199
|
};
|
|
2020
|
-
readonly
|
|
2021
|
-
readonly summary: '
|
|
2022
|
-
readonly why: '
|
|
2200
|
+
readonly typeRedundant: {
|
|
2201
|
+
readonly summary: 'type redundant';
|
|
2202
|
+
readonly why: 'Document includes unnecessary code';
|
|
2023
2203
|
readonly wcag: '1.3.1';
|
|
2024
2204
|
readonly weight: 1;
|
|
2025
2205
|
};
|
|
2026
|
-
readonly
|
|
2027
|
-
readonly summary: '
|
|
2028
|
-
readonly why: '
|
|
2029
|
-
readonly wcag: '
|
|
2206
|
+
readonly unfocusability: {
|
|
2207
|
+
readonly summary: 'element not focusable';
|
|
2208
|
+
readonly why: 'Keyboard-only user cannot choose an item to operate';
|
|
2209
|
+
readonly wcag: '2.1.1';
|
|
2030
2210
|
readonly weight: 4;
|
|
2031
2211
|
};
|
|
2032
|
-
readonly
|
|
2033
|
-
readonly summary: '
|
|
2034
|
-
readonly why: 'User cannot
|
|
2035
|
-
readonly wcag: '1.
|
|
2212
|
+
readonly verticalSpacingFrozen: {
|
|
2213
|
+
readonly summary: 'vertical text spacing frozen';
|
|
2214
|
+
readonly why: 'User cannot adjust the vertical text spacing for readability';
|
|
2215
|
+
readonly wcag: '1.4.12';
|
|
2036
2216
|
readonly weight: 4;
|
|
2037
2217
|
};
|
|
2038
|
-
readonly
|
|
2039
|
-
readonly summary: '
|
|
2040
|
-
readonly why: 'User
|
|
2218
|
+
readonly videoAlternative: {
|
|
2219
|
+
readonly summary: 'video alternative missing';
|
|
2220
|
+
readonly why: 'User cannot get help consuming a video recording as text or speech';
|
|
2041
2221
|
readonly wcag: '1.2.1';
|
|
2042
|
-
readonly weight: 1;
|
|
2043
|
-
};
|
|
2044
|
-
readonly videoNoText: {
|
|
2045
|
-
readonly summary: 'video not named';
|
|
2046
|
-
readonly why: 'User cannot get help reading video content as text';
|
|
2047
|
-
readonly wcag: '1.2.2';
|
|
2048
|
-
readonly weight: 4;
|
|
2049
|
-
};
|
|
2050
|
-
readonly videoNoTranscript: {
|
|
2051
|
-
readonly summary: 'video transcript missing';
|
|
2052
|
-
readonly why: 'User cannot get help reading video content as text';
|
|
2053
|
-
readonly wcag: '1.2.2';
|
|
2054
2222
|
readonly weight: 4;
|
|
2055
2223
|
};
|
|
2056
2224
|
readonly videoCaptionRisk: {
|
|
@@ -2071,203 +2239,35 @@ declare const issuesData: {
|
|
|
2071
2239
|
readonly wcag: '1.2.1';
|
|
2072
2240
|
readonly weight: 4;
|
|
2073
2241
|
};
|
|
2074
|
-
readonly
|
|
2075
|
-
readonly summary: 'video
|
|
2076
|
-
readonly why: 'User cannot get help
|
|
2077
|
-
readonly wcag: '1.2.
|
|
2078
|
-
readonly weight: 4;
|
|
2079
|
-
};
|
|
2080
|
-
readonly keyboardScroll: {
|
|
2081
|
-
readonly summary: 'element not scrollable';
|
|
2082
|
-
readonly why: 'Keyboard-only user cannot scroll an item';
|
|
2083
|
-
readonly wcag: '2.1.1';
|
|
2242
|
+
readonly videoNoText: {
|
|
2243
|
+
readonly summary: 'video not named';
|
|
2244
|
+
readonly why: 'User cannot get help reading video content as text';
|
|
2245
|
+
readonly wcag: '1.2.2';
|
|
2084
2246
|
readonly weight: 4;
|
|
2085
2247
|
};
|
|
2086
|
-
readonly
|
|
2087
|
-
readonly summary: '
|
|
2088
|
-
readonly why: 'User
|
|
2089
|
-
readonly wcag: '1.
|
|
2090
|
-
readonly weight: 1;
|
|
2091
|
-
};
|
|
2092
|
-
readonly scrollFocus: {
|
|
2093
|
-
readonly summary: 'scrollable element and children nonfocusable';
|
|
2094
|
-
readonly why: 'User may be unable to see all of an item without scrolling in both dimensions';
|
|
2095
|
-
readonly wcag: '2.1.1';
|
|
2096
|
-
readonly weight: 3;
|
|
2097
|
-
};
|
|
2098
|
-
readonly scrollRisk: {
|
|
2099
|
-
readonly summary: 'container size unit not percentage';
|
|
2100
|
-
readonly why: 'User may be unable to see all of an item without scrolling in both dimensions';
|
|
2101
|
-
readonly wcag: '1.4.10';
|
|
2102
|
-
readonly weight: 1;
|
|
2103
|
-
};
|
|
2104
|
-
readonly skipRepeatedContent: {
|
|
2105
|
-
readonly summary: 'skip method missing or invalid';
|
|
2106
|
-
readonly why: 'Keyboard-only user cannot easily reach the specific content of the page';
|
|
2107
|
-
readonly wcag: '2.4.1';
|
|
2108
|
-
readonly weight: 3;
|
|
2109
|
-
readonly max: 2;
|
|
2110
|
-
};
|
|
2111
|
-
readonly repeatedContentRisk: {
|
|
2112
|
-
readonly summary: 'skip method missing or invalid?';
|
|
2113
|
-
readonly why: 'Keyboard-only user may be unable easily to reach the specific content of the page';
|
|
2114
|
-
readonly wcag: '2.4.1';
|
|
2115
|
-
readonly weight: 1;
|
|
2116
|
-
readonly max: 2;
|
|
2117
|
-
};
|
|
2118
|
-
readonly submitButton: {
|
|
2119
|
-
readonly summary: 'form submission button missing';
|
|
2120
|
-
readonly why: 'User cannot easily submit a form';
|
|
2121
|
-
readonly wcag: '3.2.2';
|
|
2122
|
-
readonly weight: 3;
|
|
2123
|
-
};
|
|
2124
|
-
readonly fragmentaryNoticeRisk: {
|
|
2125
|
-
readonly summary: 'assertive region not atomic';
|
|
2126
|
-
readonly why: 'User may be unable to get help on what content has changed';
|
|
2127
|
-
readonly wcag: '4.1.3';
|
|
2128
|
-
readonly weight: 2;
|
|
2129
|
-
};
|
|
2130
|
-
readonly errorReferenceBad: {
|
|
2131
|
-
readonly summary: 'error reference invalid';
|
|
2132
|
-
readonly why: 'User cannot correct a form error';
|
|
2133
|
-
readonly wcag: '3.3.1';
|
|
2248
|
+
readonly videoNoTranscript: {
|
|
2249
|
+
readonly summary: 'video transcript missing';
|
|
2250
|
+
readonly why: 'User cannot get help reading video content as text';
|
|
2251
|
+
readonly wcag: '1.2.2';
|
|
2134
2252
|
readonly weight: 4;
|
|
2135
2253
|
};
|
|
2136
|
-
readonly
|
|
2137
|
-
readonly summary: '
|
|
2138
|
-
readonly why: 'User
|
|
2139
|
-
readonly wcag: '4
|
|
2140
|
-
readonly weight: 1;
|
|
2141
|
-
};
|
|
2142
|
-
readonly flash: {
|
|
2143
|
-
readonly summary: 'flash content';
|
|
2144
|
-
readonly why: 'Document includes code that may not work and may jeopardize user security';
|
|
2145
|
-
readonly wcag: '4.1';
|
|
2254
|
+
readonly visibleBulk: {
|
|
2255
|
+
readonly summary: 'large visible-element count';
|
|
2256
|
+
readonly why: 'User cannot easily find items in the page';
|
|
2257
|
+
readonly wcag: '2.4';
|
|
2146
2258
|
readonly weight: 1;
|
|
2147
2259
|
readonly max: 1;
|
|
2148
2260
|
};
|
|
2149
|
-
readonly
|
|
2150
|
-
readonly summary: '
|
|
2151
|
-
readonly why: '
|
|
2152
|
-
readonly wcag: '
|
|
2153
|
-
readonly weight: 1;
|
|
2154
|
-
};
|
|
2155
|
-
readonly attributeObsolete: {
|
|
2156
|
-
readonly summary: 'attribute obsolete';
|
|
2157
|
-
readonly why: 'Document includes obsolete code that the browser may fail to process';
|
|
2158
|
-
readonly wcag: '4.1';
|
|
2159
|
-
readonly weight: 3;
|
|
2160
|
-
};
|
|
2161
|
-
readonly nonElement: {
|
|
2162
|
-
readonly summary: 'element unknown';
|
|
2163
|
-
readonly why: 'Document includes an unknown element that the browser cannot process';
|
|
2164
|
-
readonly wcag: '4.1';
|
|
2165
|
-
readonly weight: 4;
|
|
2166
|
-
};
|
|
2167
|
-
readonly elementObsolete: {
|
|
2168
|
-
readonly summary: 'element obsolete';
|
|
2169
|
-
readonly why: 'Document includes obsolete code that the browser may fail to process';
|
|
2170
|
-
readonly wcag: '4.1';
|
|
2171
|
-
readonly weight: 3;
|
|
2172
|
-
};
|
|
2173
|
-
readonly obsolete: {
|
|
2174
|
-
readonly summary: 'code obsolete';
|
|
2175
|
-
readonly why: 'Document contains code that is no longer standard';
|
|
2176
|
-
readonly wcag: '4.1';
|
|
2177
|
-
readonly weight: 3;
|
|
2178
|
-
};
|
|
2179
|
-
readonly atRuleInvalid: {
|
|
2180
|
-
readonly summary: 'invalid at-rule';
|
|
2181
|
-
readonly why: 'Document cannot be properly displayed in particular contexts';
|
|
2182
|
-
readonly wcag: '4.1';
|
|
2183
|
-
readonly weight: 3;
|
|
2184
|
-
};
|
|
2185
|
-
readonly cssInvalid: {
|
|
2186
|
-
readonly summary: 'CSS invalid';
|
|
2187
|
-
readonly why: 'Document cannot be properly displayed';
|
|
2188
|
-
readonly wcag: '4.1';
|
|
2189
|
-
readonly weight: 3;
|
|
2190
|
-
};
|
|
2191
|
-
readonly elementClosure: {
|
|
2192
|
-
readonly summary: 'element closure invalid';
|
|
2193
|
-
readonly why: 'Document contains invalid code';
|
|
2194
|
-
readonly wcag: '4.1.1';
|
|
2195
|
-
readonly weight: 3;
|
|
2196
|
-
};
|
|
2197
|
-
readonly nestingBad: {
|
|
2198
|
-
readonly summary: 'nesting invalid';
|
|
2199
|
-
readonly why: 'Document contains invalid code';
|
|
2200
|
-
readonly wcag: '4.1.1';
|
|
2201
|
-
readonly weight: 3;
|
|
2202
|
-
};
|
|
2203
|
-
readonly characterBad: {
|
|
2204
|
-
readonly summary: 'invalid character';
|
|
2205
|
-
readonly why: 'Invalid character makes the page behave incorrectly';
|
|
2206
|
-
readonly wcag: '4.1';
|
|
2207
|
-
readonly weight: 3;
|
|
2208
|
-
};
|
|
2209
|
-
readonly entityBad: {
|
|
2210
|
-
readonly summary: 'named character reference invalid';
|
|
2211
|
-
readonly why: 'User may be unable to read all the page text';
|
|
2212
|
-
readonly wcag: '4.1';
|
|
2213
|
-
readonly weight: 4;
|
|
2214
|
-
};
|
|
2215
|
-
readonly textContentBad: {
|
|
2216
|
-
readonly summary: 'element text content invalid';
|
|
2217
|
-
readonly why: 'User may be unable to read all the page text';
|
|
2218
|
-
readonly wcag: '4.1';
|
|
2219
|
-
readonly weight: 3;
|
|
2220
|
-
};
|
|
2221
|
-
readonly parseError: {
|
|
2222
|
-
readonly summary: 'code invalid';
|
|
2223
|
-
readonly why: 'Invalid code in the page may prevent a helper from working';
|
|
2224
|
-
readonly wcag: '4.1';
|
|
2261
|
+
readonly visibleLabelNotInName: {
|
|
2262
|
+
readonly summary: 'visible label not in name';
|
|
2263
|
+
readonly why: 'User cannot get help choosing a form control to operate';
|
|
2264
|
+
readonly wcag: '2.5.3';
|
|
2225
2265
|
readonly weight: 3;
|
|
2226
2266
|
};
|
|
2227
|
-
readonly
|
|
2228
|
-
readonly summary: '
|
|
2229
|
-
readonly why: 'User cannot
|
|
2230
|
-
readonly wcag: '
|
|
2231
|
-
readonly weight: 4;
|
|
2232
|
-
readonly max: 1;
|
|
2233
|
-
};
|
|
2234
|
-
readonly encodingBad: {
|
|
2235
|
-
readonly summary: 'text not Unicode-compliant';
|
|
2236
|
-
readonly why: 'User cannot read all of the text';
|
|
2237
|
-
readonly wcag: '3.1.3';
|
|
2238
|
-
readonly weight: 4;
|
|
2239
|
-
};
|
|
2240
|
-
readonly encodingPrivate: {
|
|
2241
|
-
readonly summary: 'text in Private Use Area';
|
|
2242
|
-
readonly why: 'User cannot read all of the text';
|
|
2243
|
-
readonly wcag: '3.1.3';
|
|
2244
|
-
readonly weight: 4;
|
|
2245
|
-
readonly max: 1;
|
|
2246
|
-
};
|
|
2247
|
-
readonly captcha2: {
|
|
2248
|
-
readonly summary: 'captcha2';
|
|
2249
|
-
readonly why: 'User is prevented from consuming the page';
|
|
2250
|
-
readonly wcag: '1.1.1';
|
|
2251
|
-
readonly weight: 1;
|
|
2252
|
-
readonly max: 1;
|
|
2253
|
-
};
|
|
2254
|
-
readonly fatalError: {
|
|
2255
|
-
readonly summary: 'fatal error';
|
|
2256
|
-
readonly why: 'Document prevents testing for accessibility';
|
|
2257
|
-
readonly wcag: '4.1';
|
|
2258
|
-
readonly weight: 4;
|
|
2259
|
-
readonly max: 1;
|
|
2260
|
-
};
|
|
2261
|
-
readonly notValidatable: {
|
|
2262
|
-
readonly summary: 'item makes testing inconclusive';
|
|
2263
|
-
readonly why: 'Item prevents a conclusive accessibility test';
|
|
2264
|
-
readonly wcag: '4.1';
|
|
2265
|
-
readonly weight: 1;
|
|
2266
|
-
};
|
|
2267
|
-
readonly svgNotValidatable: {
|
|
2268
|
-
readonly summary: 'SVG version not 1.1';
|
|
2269
|
-
readonly why: 'Item prevents testing image for accessibility';
|
|
2270
|
-
readonly wcag: '4.1';
|
|
2267
|
+
readonly zIndexNotZero: {
|
|
2268
|
+
readonly summary: 'z-index not zero';
|
|
2269
|
+
readonly why: 'User cannot predict the effect of clicking';
|
|
2270
|
+
readonly wcag: '1.4';
|
|
2271
2271
|
readonly weight: 1;
|
|
2272
2272
|
};
|
|
2273
2273
|
};
|