json-ES.js 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056
  1. const wcagObj= {
  2. "latestWCAGversion": "2.1",
  3. "tests": [
  4. {
  5. "successCriteria": "1.1.1 Contenido no textual",
  6. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  7. "wcagLevel": "A",
  8. "wcagVersion": "2.0",
  9. "test": "all <img> elements must have an alt attribute",
  10. "category": [
  11. "content"
  12. ]
  13. },
  14. {
  15. "successCriteria": "1.1.1 Contenido no textual",
  16. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  17. "wcagLevel": "A",
  18. "wcagVersion": "2.0",
  19. "test": "all descriptive <img> elements must have a succinct description of the image using alt text, aria-label or aria-labelledby",
  20. "category": [
  21. "content"
  22. ]
  23. },
  24. {
  25. "successCriteria": "1.1.1 Contenido no textual",
  26. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  27. "wcagLevel": "A",
  28. "wcagVersion": "2.0",
  29. "test": "all complex descriptive <img> element descriptions must be provided adjacent to the image or on a separate page",
  30. "category": [
  31. "content"
  32. ]
  33. },
  34. {
  35. "successCriteria": "1.1.1 Contenido no textual",
  36. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  37. "wcagLevel": "A",
  38. "wcagVersion": "2.0",
  39. "test": "all controls have an accessible name describing its purpose (often but not always a programmatically linked label)",
  40. "category": [
  41. "custom-controls",
  42. "forms-and-UI"
  43. ]
  44. },
  45. {
  46. "successCriteria": "1.1.1 Contenido no textual",
  47. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  48. "wcagLevel": "A",
  49. "wcagVersion": "2.0",
  50. "test": "two different modalities of CAPTCHA are provided",
  51. "category": [
  52. "content"
  53. ]
  54. },
  55. {
  56. "successCriteria": "1.1.1 Contenido no textual",
  57. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  58. "wcagLevel": "A",
  59. "wcagVersion": "2.0",
  60. "test": "or, providing access to a human to bypass CAPTCHA",
  61. "category": [
  62. "content"
  63. ]
  64. },
  65. {
  66. "successCriteria": "1.1.1 Contenido no textual",
  67. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  68. "wcagLevel": "A",
  69. "wcagVersion": "2.0",
  70. "test": "or, not requiring CAPTCHA for authorised users",
  71. "category": [
  72. "content"
  73. ]
  74. },
  75. {
  76. "successCriteria": "1.1.1 Contenido no textual",
  77. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  78. "wcagLevel": "A",
  79. "wcagVersion": "2.0",
  80. "test": "a text alternative is provided for charts and graphs",
  81. "category": [
  82. "content"
  83. ]
  84. },
  85. {
  86. "successCriteria": "1.1.1 Contenido no textual",
  87. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-content.html",
  88. "wcagLevel": "A",
  89. "wcagVersion": "2.0",
  90. "test": "a text or exercise invalid if presented in text has text identification describing the non-text content",
  91. "category": [
  92. "content"
  93. ]
  94. },
  95. {
  96. "successCriteria": "1.2.1 Sólo audio y sólo vídeo (pregrabado)",
  97. "link": "https://www.w3.org/WAI/WCAG21/Understanding/audio-only-and-video-only-prerecorded.html",
  98. "wcagLevel": "A",
  99. "wcagVersion": "2.0",
  100. "test": "pre-recorded video with no dialogue must come with easily reached text or audio description of what happens visually",
  101. "category": [
  102. "audio-video"
  103. ]
  104. },
  105. {
  106. "successCriteria": "1.2.1 Sólo audio y sólo vídeo (pregrabado)",
  107. "link": "https://www.w3.org/WAI/WCAG21/Understanding/audio-only-and-video-only-prerecorded.html",
  108. "wcagLevel": "A",
  109. "wcagVersion": "2.0",
  110. "test": "pre-recorded audio must come with easily reached text transcript",
  111. "category": [
  112. "audio-video"
  113. ]
  114. },
  115. {
  116. "successCriteria": "1.2.2 Subtítulos (pregrabados)",
  117. "link": "https://www.w3.org/WAI/WCAG21/Understanding/captions-prerecorded.html",
  118. "wcagLevel": "A",
  119. "wcagVersion": "2.0",
  120. "test": "video must come with synchronised captions of dialogue, who is speaking and non-speech information including meaningful sound effects",
  121. "category": [
  122. "audio-video"
  123. ]
  124. },
  125. {
  126. "successCriteria": "1.2.3 Audiodescripción o medios alternativos (pregrabados)",
  127. "link": "https://www.w3.org/WAI/WCAG21/Understanding/audio-description-or-media-alternative-prerecorded.html",
  128. "wcagLevel": "A",
  129. "wcagVersion": "2.0",
  130. "test": "pre-recorded video containing essential information conveyed visually must come with easily reached full-text alternative describing important visual details",
  131. "category": [
  132. "audio-video"
  133. ]
  134. },
  135. {
  136. "successCriteria": "1.2.3 Audiodescripción o medios alternativos (pregrabados)",
  137. "link": "https://www.w3.org/WAI/WCAG21/Understanding/audio-description-or-media-alternative-prerecorded.html",
  138. "wcagLevel": "A",
  139. "wcagVersion": "2.0",
  140. "test": "or, an audio description track is provided",
  141. "category": [
  142. "audio-video"
  143. ]
  144. },
  145. {
  146. "successCriteria": "1.2.4 Subtítulos (en directo)",
  147. "link": "https://www.w3.org/WAI/WCAG21/Understanding/captions-live.html",
  148. "wcagLevel": "AA",
  149. "wcagVersion": "2.0",
  150. "test": "live audio content must have text-based synchronised captions",
  151. "category": [
  152. "audio-video"
  153. ]
  154. },
  155. {
  156. "successCriteria": "1.2.5 Descripción de audio (pregrabada)",
  157. "link": "https://www.w3.org/WAI/WCAG21/Understanding/audio-description-prerecorded.html",
  158. "wcagLevel": "AA",
  159. "wcagVersion": "2.0",
  160. "test": "video containing essential information conveyed visually must have a synchronised audio description soundtrack",
  161. "category": [
  162. "audio-video"
  163. ]
  164. },
  165. {
  166. "successCriteria": "1.3.1 Información y relaciones",
  167. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  168. "wcagLevel": "A",
  169. "wcagVersion": "2.0",
  170. "test": "elements must be used according to their semantics not how they appear",
  171. "category": [
  172. "content"
  173. ]
  174. },
  175. {
  176. "successCriteria": "1.3.1 Información y relaciones",
  177. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  178. "wcagLevel": "A",
  179. "wcagVersion": "2.0",
  180. "test": "data tables must have header cells created using the <th> element",
  181. "category": [
  182. "content"
  183. ]
  184. },
  185. {
  186. "successCriteria": "1.3.1 Información y relaciones",
  187. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  188. "wcagLevel": "A",
  189. "wcagVersion": "2.0",
  190. "test": "data tables must have a caption element with a concise description of the contents",
  191. "category": [
  192. "content"
  193. ]
  194. },
  195. {
  196. "successCriteria": "1.3.1 Información y relaciones",
  197. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  198. "wcagLevel": "A",
  199. "wcagVersion": "2.0",
  200. "test": "labels must be programmatically associated to form controls using a <label>, aria-labelledby, aria-label",
  201. "category": [
  202. "forms-and-UI"
  203. ]
  204. },
  205. {
  206. "successCriteria": "1.3.1 Información y relaciones",
  207. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  208. "wcagLevel": "A",
  209. "wcagVersion": "2.0",
  210. "test": "extra input information is programmatically marked up",
  211. "category": [
  212. "forms-and-UI"
  213. ]
  214. },
  215. {
  216. "successCriteria": "1.3.1 Información y relaciones",
  217. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  218. "wcagLevel": "A",
  219. "wcagVersion": "2.0",
  220. "test": "two or more radio buttons, or checkbox controls must be grouped using a <fieldset>",
  221. "category": [
  222. "content"
  223. ]
  224. },
  225. {
  226. "successCriteria": "1.3.1 Información y relaciones",
  227. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  228. "wcagLevel": "A",
  229. "wcagVersion": "2.0",
  230. "test": "and, the <fieldset> must have a succinct <legend> element",
  231. "category": [
  232. "content"
  233. ]
  234. },
  235. {
  236. "successCriteria": "1.3.1 Información y relaciones",
  237. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  238. "wcagLevel": "A",
  239. "wcagVersion": "2.0",
  240. "test": "headings must be marked up using heading elements",
  241. "category": [
  242. "content"
  243. ]
  244. },
  245. {
  246. "successCriteria": "1.3.1 Información y relaciones",
  247. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  248. "wcagLevel": "A",
  249. "wcagVersion": "2.0",
  250. "test": "lists must be marked up using <ul>, <ol>, <dl> elements",
  251. "category": [
  252. "content"
  253. ]
  254. },
  255. {
  256. "successCriteria": "1.3.1 Información y relaciones",
  257. "link": "https://www.w3.org/WAI/WCAG21/Understanding/info-and-relationships.html",
  258. "wcagLevel": "A",
  259. "wcagVersion": "2.0",
  260. "test": "landmark regions have been correctly applied",
  261. "category": [
  262. "structure"
  263. ]
  264. },
  265. {
  266. "successCriteria": "1.3.2 Secuencia significativa",
  267. "link": "https://www.w3.org/WAI/WCAG21/Understanding/meaningful-sequence.html",
  268. "wcagLevel": "A",
  269. "wcagVersion": "2.0",
  270. "test": "the reading order and navigation of content must be logical and intuitive",
  271. "category": [
  272. "structure"
  273. ]
  274. },
  275. {
  276. "successCriteria": "1.3.3 Características sensoriales",
  277. "link": "https://www.w3.org/WAI/WCAG21/Understanding/sensory-characteristics.html",
  278. "wcagLevel": "A",
  279. "wcagVersion": "2.0",
  280. "test": "instructions for users must rely on more than solely visual cues",
  281. "category": [
  282. "content"
  283. ]
  284. },
  285. {
  286. "successCriteria": "1.3.3 Características sensoriales",
  287. "link": "https://www.w3.org/WAI/WCAG21/Understanding/sensory-characteristics.html",
  288. "wcagLevel": "A",
  289. "wcagVersion": "2.0",
  290. "test": "instructions for users must rely on more than sound or auditory cues",
  291. "category": [
  292. "content"
  293. ]
  294. },
  295. {
  296. "successCriteria": "1.3.4 Orientación",
  297. "link": "https://www.w3.org/WAI/WCAG21/Understanding/orientation.html",
  298. "wcagLevel": "AA",
  299. "wcagVersion": "2.1",
  300. "test": "content orientation is not locked to either landscape or portrait unless essential for functionality",
  301. "category": [
  302. "structure"
  303. ]
  304. },
  305. {
  306. "successCriteria": "1.3.5 Identificar el propósito de la entrada",
  307. "link": "https://www.w3.org/WAI/WCAG21/Understanding/identify-input-purpose.html",
  308. "wcagLevel": "AA",
  309. "wcagVersion": "2.1",
  310. "test": "the autocomplete attribute is applied to common user input fields",
  311. "category": [
  312. "forms-and-UI"
  313. ]
  314. },
  315. {
  316. "successCriteria": "1.3.5 Identificar el propósito de la entrada",
  317. "link": "https://www.w3.org/WAI/WCAG21/Understanding/identify-input-purpose.html",
  318. "wcagLevel": "AA",
  319. "wcagVersion": "2.1",
  320. "test": "and, the autocomplete attribute value uses the correct https://www.w3.org/TR/WCAG21/#input-purposes",
  321. "category": [
  322. "forms-and-UI"
  323. ]
  324. },
  325. {
  326. "successCriteria": "1.4.1 Uso del color",
  327. "link": "https://www.w3.org/WAI/WCAG21/Understanding/use-of-color.html",
  328. "wcagLevel": "A",
  329. "wcagVersion": "2.0",
  330. "test": "colour must not be the sole method of conveying information or distinguishing visual elements",
  331. "category": [
  332. "colour"
  333. ]
  334. },
  335. {
  336. "successCriteria": "1.4.1 Uso del color",
  337. "link": "https://www.w3.org/WAI/WCAG21/Understanding/use-of-color.html",
  338. "wcagLevel": "A",
  339. "wcagVersion": "2.0",
  340. "test": "link colour contrast is at least 3:1 and has an additional non-colour effect when hovered or in focus",
  341. "category": [
  342. "colour"
  343. ]
  344. },
  345. {
  346. "successCriteria": "1.4.2 Control de audio",
  347. "link": "https://www.w3.org/WAI/WCAG21/Understanding/audio-control.html",
  348. "wcagLevel": "A",
  349. "wcagVersion": "2.0",
  350. "test": "a mechanism exists to stop, pause, mute or adjust audio which plays for longer than 3 seconds",
  351. "category": [
  352. "audio-video"
  353. ]
  354. },
  355. {
  356. "successCriteria": "1.4.3 Contraste (mínimo)",
  357. "link": "https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html",
  358. "wcagLevel": "AA",
  359. "wcagVersion": "2.0",
  360. "test": "text smaller than 24px and not bold has a minimum contrast ratio of 4.5:1 with the background colour",
  361. "category": [
  362. "font-size",
  363. "structure"
  364. ]
  365. },
  366. {
  367. "successCriteria": "1.4.3 Contraste (mínimo)",
  368. "link": "https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html",
  369. "wcagLevel": "AA",
  370. "wcagVersion": "2.0",
  371. "test": "text smaller than 18.6px and bold has a minimum contrast ratio of 4.5:1 with the background colour",
  372. "category": [
  373. "font-size",
  374. "structure"
  375. ]
  376. },
  377. {
  378. "successCriteria": "1.4.3 Contraste (mínimo)",
  379. "link": "https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html",
  380. "wcagLevel": "AA",
  381. "wcagVersion": "2.0",
  382. "test": "text at least 24px and not bold has a minimum contrast ratio of 3:1 with the background colour",
  383. "category": [
  384. "font-size",
  385. "structure"
  386. ]
  387. },
  388. {
  389. "successCriteria": "1.4.3 Contraste (mínimo)",
  390. "link": "https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html",
  391. "wcagLevel": "AA",
  392. "wcagVersion": "2.0",
  393. "test": "text at least 18.6px and bold has a minimum contrast ratio of 3:1 with the background colour",
  394. "category": [
  395. "font-size",
  396. "structure"
  397. ]
  398. },
  399. {
  400. "successCriteria": "1.4.4 Cambiar el tamaño del texto",
  401. "link": "https://www.w3.org/WAI/WCAG21/Understanding/resize-text.html",
  402. "wcagLevel": "AA",
  403. "wcagVersion": "2.0",
  404. "test": "all text (including controls) is readable at 200% browser zoom",
  405. "category": [
  406. "font-size",
  407. "structure"
  408. ]
  409. },
  410. {
  411. "successCriteria": "1.4.5 Imágenes de texto",
  412. "link": "https://www.w3.org/WAI/WCAG21/Understanding/images-of-text.html",
  413. "wcagLevel": "AA",
  414. "wcagVersion": "2.0",
  415. "test": "no images of text exists unless essential",
  416. "category": [
  417. "content"
  418. ]
  419. },
  420. {
  421. "successCriteria": "1.4.10 Reflujo",
  422. "link": "https://www.w3.org/WAI/WCAG21/Understanding/reflow.html",
  423. "wcagLevel": "AA",
  424. "wcagVersion": "2.1",
  425. "test": "no horizontal scrollbars are shown at 400% browser zoom",
  426. "category": [
  427. "structure"
  428. ]
  429. },
  430. {
  431. "successCriteria": "1.4.11 Contraste sin texto",
  432. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-contrast.html",
  433. "wcagLevel": "AA",
  434. "wcagVersion": "2.1",
  435. "test": "if a border is the only way to identify an active control it must have a minimum 3:1 contrast with the adjacent colour",
  436. "category": [
  437. "colour",
  438. "forms-and-UI"
  439. ]
  440. },
  441. {
  442. "successCriteria": "1.4.11 Contraste sin texto",
  443. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-contrast.html",
  444. "wcagLevel": "AA",
  445. "wcagVersion": "2.1",
  446. "test": "visual state of active control must have a minimum 3:1 contrast with adjacent colour",
  447. "category": [
  448. "colour"
  449. ]
  450. },
  451. {
  452. "successCriteria": "1.4.11 Contraste sin texto",
  453. "link": "https://www.w3.org/WAI/WCAG21/Understanding/non-text-contrast.html",
  454. "wcagLevel": "AA",
  455. "wcagVersion": "2.1",
  456. "test": "parts of graphic required to understand the content have a minimum 3:1 contrast with adjacent colour",
  457. "category": [
  458. "colour"
  459. ]
  460. },
  461. {
  462. "successCriteria": "1.4.12 Espaciado del texto",
  463. "link": "https://www.w3.org/WAI/WCAG21/Understanding/text-spacing.html",
  464. "wcagLevel": "AA",
  465. "wcagVersion": "2.1",
  466. "test": "there is no loss of content or functionality when the https://dylanb.github.io/bookmarklets.html is applied",
  467. "category": [
  468. "structure"
  469. ]
  470. },
  471. {
  472. "successCriteria": "1.4.13 Contenido al pasar por encima o enfocar",
  473. "link": "https://www.w3.org/WAI/WCAG21/Understanding/content-on-hover-or-focus.html",
  474. "wcagLevel": "AA",
  475. "wcagVersion": "2.1",
  476. "test": "additional content triggered on hover or keyboard focus can be dismissed without moving mouse or keyboard focus",
  477. "category": [
  478. "dynamic-content",
  479. "keyboard"
  480. ]
  481. },
  482. {
  483. "successCriteria": "1.4.13 Contenido al pasar por encima o enfocar",
  484. "link": "https://www.w3.org/WAI/WCAG21/Understanding/content-on-hover-or-focus.html",
  485. "wcagLevel": "AA",
  486. "wcagVersion": "2.1",
  487. "test": "and, if hover triggers the content pointer can be moved to hovered content without disappearing",
  488. "category": [
  489. "dynamic-content",
  490. "keyboard"
  491. ]
  492. },
  493. {
  494. "successCriteria": "1.4.13 Contenido al pasar por encima o enfocar",
  495. "link": "https://www.w3.org/WAI/WCAG21/Understanding/content-on-hover-or-focus.html",
  496. "wcagLevel": "AA",
  497. "wcagVersion": "2.1",
  498. "test": "and, additional content remains visible until hover or focus trigger is removed or user dismisses it",
  499. "category": [
  500. "dynamic-content",
  501. "keyboard"
  502. ]
  503. },
  504. {
  505. "successCriteria": "2.1.1 Teclado",
  506. "link": "https://www.w3.org/WAI/WCAG21/Understanding/keyboard.html",
  507. "wcagLevel": "A",
  508. "wcagVersion": "2.0",
  509. "test": "all functionality must be available from the keyboard",
  510. "category": [
  511. "custom-controls",
  512. "forms-and-UI",
  513. "keyboard"
  514. ]
  515. },
  516. {
  517. "successCriteria": "2.1.1 Teclado",
  518. "link": "https://www.w3.org/WAI/WCAG21/Understanding/keyboard.html",
  519. "wcagLevel": "A",
  520. "wcagVersion": "2.0",
  521. "test": "and, shortcut and access keys must not conflict with browser or assistive technology shortcuts",
  522. "category": [
  523. "custom-controls",
  524. "forms-and-UI",
  525. "keyboard"
  526. ]
  527. },
  528. {
  529. "successCriteria": "2.1.2 Sin trampa de teclado",
  530. "link": "https://www.w3.org/WAI/WCAG21/Understanding/no-keyboard-trap.html",
  531. "wcagLevel": "A",
  532. "wcagVersion": "2.0",
  533. "test": "keyboard focus must not become trapped in a page element",
  534. "category": [
  535. "keyboard"
  536. ]
  537. },
  538. {
  539. "successCriteria": "2.1.2 Sin trampa de teclado",
  540. "link": "https://www.w3.org/WAI/WCAG21/Understanding/no-keyboard-trap.html",
  541. "wcagLevel": "A",
  542. "wcagVersion": "2.0",
  543. "test": "and, must be able to navigate to and from all interactive elements using only the keyboard",
  544. "category": [
  545. "keyboard"
  546. ]
  547. },
  548. {
  549. "successCriteria": "2.1.4 Atajos de teclas de caracteres",
  550. "link": "https://www.w3.org/WAI/WCAG21/Understanding/character-key-shortcuts.html",
  551. "wcagLevel": "A",
  552. "wcagVersion": "2.1",
  553. "test": "character key shortcuts can be turned off",
  554. "category": [
  555. "keyboard"
  556. ]
  557. },
  558. {
  559. "successCriteria": "2.1.4 Atajos de teclas de caracteres",
  560. "link": "https://www.w3.org/WAI/WCAG21/Understanding/character-key-shortcuts.html",
  561. "wcagLevel": "A",
  562. "wcagVersion": "2.1",
  563. "test": "or, character key shortcuts can be remapped",
  564. "category": [
  565. "keyboard"
  566. ]
  567. },
  568. {
  569. "successCriteria": "2.1.4 Atajos de teclas de caracteres",
  570. "link": "https://www.w3.org/WAI/WCAG21/Understanding/character-key-shortcuts.html",
  571. "wcagLevel": "A",
  572. "wcagVersion": "2.1",
  573. "test": "or, character key shortcuts are only active when the relevant UI component is in focus",
  574. "category": [
  575. "keyboard"
  576. ]
  577. },
  578. {
  579. "successCriteria": "2.2.1 Cronometraje ajustable",
  580. "link": "https://www.w3.org/WAI/WCAG21/Understanding/timing-adjustable.html",
  581. "wcagLevel": "A",
  582. "wcagVersion": "2.0",
  583. "test": "page time limits have an option to turn off, adjust or extend the time limit",
  584. "category": [
  585. "dynamic-content"
  586. ]
  587. },
  588. {
  589. "successCriteria": "2.2.2 Pausar Detener Ocultar",
  590. "link": "https://www.w3.org/WAI/WCAG21/Understanding/pause-stop-hide.html",
  591. "wcagLevel": "A",
  592. "wcagVersion": "2.0",
  593. "test": "content that moves, blinks or scrolls automatically lasting longer than 5 seconds must be able to be paused, stopped or hidden",
  594. "category": [
  595. "dynamic-content"
  596. ]
  597. },
  598. {
  599. "successCriteria": "2.3.1 Tres destellos o por debajo del umbral",
  600. "link": "https://www.w3.org/WAI/WCAG21/Understanding/three-flashes-or-below-threshold.html",
  601. "wcagLevel": "A",
  602. "wcagVersion": "2.0",
  603. "test": "page content must not flash more than 3 times per second",
  604. "category": [
  605. "dynamic-content"
  606. ]
  607. },
  608. {
  609. "successCriteria": "2.4.1 Bloques de derivación",
  610. "link": "https://www.w3.org/WAI/WCAG21/Understanding/bypass-blocks.html",
  611. "wcagLevel": "A",
  612. "wcagVersion": "2.0",
  613. "test": "skip links are provided to avoid page elements that repeat across multiple pages",
  614. "category": [
  615. "structure"
  616. ]
  617. },
  618. {
  619. "successCriteria": "2.4.1 Bloques de derivación",
  620. "link": "https://www.w3.org/WAI/WCAG21/Understanding/bypass-blocks.html",
  621. "wcagLevel": "A",
  622. "wcagVersion": "2.0",
  623. "test": "or, a proper heading structure is provided",
  624. "category": [
  625. "structure"
  626. ]
  627. },
  628. {
  629. "successCriteria": "2.4.1 Bloques de derivación",
  630. "link": "https://www.w3.org/WAI/WCAG21/Understanding/bypass-blocks.html",
  631. "wcagLevel": "A",
  632. "wcagVersion": "2.0",
  633. "test": "or, aria/HTML5 landmarks are provided",
  634. "category": [
  635. "structure"
  636. ]
  637. },
  638. {
  639. "successCriteria": "2.4.1 Bloques de derivación",
  640. "link": "https://www.w3.org/WAI/WCAG21/Understanding/bypass-blocks.html",
  641. "wcagLevel": "A",
  642. "wcagVersion": "2.0",
  643. "test": "iframes must have descriptive, informative and unique titles",
  644. "category": [
  645. "structure"
  646. ]
  647. },
  648. {
  649. "successCriteria": "2.4.2 Página titulada",
  650. "link": "https://www.w3.org/WAI/WCAG21/Understanding/page-titled.html",
  651. "wcagLevel": "A",
  652. "wcagVersion": "2.0",
  653. "test": "page <title> must be descriptive and informative",
  654. "category": [
  655. "structure"
  656. ]
  657. },
  658. {
  659. "successCriteria": "2.4.3 Orden de concentración",
  660. "link": "https://www.w3.org/WAI/WCAG21/Understanding/focus-order.html",
  661. "wcagLevel": "A",
  662. "wcagVersion": "2.0",
  663. "test": "the navigation order of link, form elements and interactive components must be logical",
  664. "category": [
  665. "structure"
  666. ]
  667. },
  668. {
  669. "successCriteria": "2.4.4 Propósito del enlace (en contexto)",
  670. "link": "https://www.w3.org/WAI/WCAG21/Understanding/link-purpose-in-context.html",
  671. "wcagLevel": "A",
  672. "wcagVersion": "2.0",
  673. "test": "each link is understandable solely from the displayed text",
  674. "category": [
  675. "content",
  676. "link"
  677. ]
  678. },
  679. {
  680. "successCriteria": "2.4.4 Propósito del enlace (en contexto)",
  681. "link": "https://www.w3.org/WAI/WCAG21/Understanding/link-purpose-in-context.html",
  682. "wcagLevel": "A",
  683. "wcagVersion": "2.0",
  684. "test": "or, each link is understandable from the immediate surrounding content",
  685. "category": [
  686. "content",
  687. "link"
  688. ]
  689. },
  690. {
  691. "successCriteria": "2.4.5 Vías múltiples",
  692. "link": "https://www.w3.org/WAI/WCAG21/Understanding/multiple-ways.html",
  693. "wcagLevel": "AA",
  694. "wcagVersion": "2.0",
  695. "test": "at least 2 of related pages, table of contents, site map, site search, or list of web pages must be provided for non-workflows",
  696. "category": [
  697. "content"
  698. ]
  699. },
  700. {
  701. "successCriteria": "2.4.6 Títulos y etiquetas",
  702. "link": "https://www.w3.org/WAI/WCAG21/Understanding/headings-and-labels.html",
  703. "wcagLevel": "AA",
  704. "wcagVersion": "2.0",
  705. "test": "labels for form controls and interactive controls must be informative",
  706. "category": [
  707. "custom-controls",
  708. "forms-and-UI"
  709. ]
  710. },
  711. {
  712. "successCriteria": "2.4.6 Títulos y etiquetas",
  713. "link": "https://www.w3.org/WAI/WCAG21/Understanding/headings-and-labels.html",
  714. "wcagLevel": "AA",
  715. "wcagVersion": "2.0",
  716. "test": "page headings must be informative",
  717. "category": [
  718. "structure"
  719. ]
  720. },
  721. {
  722. "successCriteria": "2.4.7 Foco visible",
  723. "link": "https://www.w3.org/WAI/WCAG21/Understanding/focus-visible.html",
  724. "wcagLevel": "AA",
  725. "wcagVersion": "2.0",
  726. "test": "all interactive elements have a visible focus effect",
  727. "category": [
  728. "custom-controls",
  729. "forms-and-UI"
  730. ]
  731. },
  732. {
  733. "successCriteria": "2.5.1 Gestos con el puntero",
  734. "link": "https://www.w3.org/WAI/WCAG21/Understanding/pointer-gestures.html",
  735. "wcagLevel": "A",
  736. "wcagVersion": "2.1",
  737. "test": "path-based multi-point functionality can be operated with single-point actions",
  738. "category": [
  739. "custom-controls"
  740. ]
  741. },
  742. {
  743. "successCriteria": "2.5.2 Cancelación de punteros",
  744. "link": "https://www.w3.org/WAI/WCAG21/Understanding/pointer-cancellation.html",
  745. "wcagLevel": "A",
  746. "wcagVersion": "2.1",
  747. "test": "functionality operated by a single mouse click does not use the down-event",
  748. "category": [
  749. "custom-controls"
  750. ]
  751. },
  752. {
  753. "successCriteria": "2.5.2 Cancelación de punteros",
  754. "link": "https://www.w3.org/WAI/WCAG21/Understanding/pointer-cancellation.html",
  755. "wcagLevel": "A",
  756. "wcagVersion": "2.1",
  757. "test": "or, the functionality can be undone",
  758. "category": [
  759. "custom-controls"
  760. ]
  761. },
  762. {
  763. "successCriteria": "2.5.2 Cancelación de punteros",
  764. "link": "https://www.w3.org/WAI/WCAG21/Understanding/pointer-cancellation.html",
  765. "wcagLevel": "A",
  766. "wcagVersion": "2.1",
  767. "test": "or, the up-event reverses the action of the down-event",
  768. "category": [
  769. "custom-controls"
  770. ]
  771. },
  772. {
  773. "successCriteria": "2.5.2 Cancelación de punteros",
  774. "link": "https://www.w3.org/WAI/WCAG21/Understanding/pointer-cancellation.html",
  775. "wcagLevel": "A",
  776. "wcagVersion": "2.1",
  777. "test": "or, the down event is essential for the function (i.e. onscreen keyboard)",
  778. "category": [
  779. "custom-controls"
  780. ]
  781. },
  782. {
  783. "successCriteria": "2.5.3 Etiqueta en el nombre",
  784. "link": "https://www.w3.org/WAI/WCAG21/Understanding/label-in-name.html",
  785. "wcagLevel": "A",
  786. "wcagVersion": "2.1",
  787. "test": "UI controls which include a visible label have a matching full (or partial) accessible name",
  788. "category": [
  789. "custom-controls",
  790. "forms-and-UI"
  791. ]
  792. },
  793. {
  794. "successCriteria": "2.5.4 Actuación del movimiento",
  795. "link": "https://www.w3.org/WAI/WCAG21/Understanding/motion-actuation.html",
  796. "wcagLevel": "A",
  797. "wcagVersion": "2.1",
  798. "test": "functionality triggered by a users motion or gestures can be turned off",
  799. "category": [
  800. "structure"
  801. ]
  802. },
  803. {
  804. "successCriteria": "2.5.4 Actuación del movimiento",
  805. "link": "https://www.w3.org/WAI/WCAG21/Understanding/motion-actuation.html",
  806. "wcagLevel": "A",
  807. "wcagVersion": "2.1",
  808. "test": "and, functionality can be operated without device motion or user gestures",
  809. "category": [
  810. "structure"
  811. ]
  812. },
  813. {
  814. "successCriteria": "3.1.1 Idioma de la página",
  815. "link": "https://www.w3.org/WAI/WCAG21/Understanding/language-of-page.html",
  816. "wcagLevel": "A",
  817. "wcagVersion": "2.0",
  818. "test": "each page must have a lang attribute",
  819. "category": [
  820. "structure"
  821. ]
  822. },
  823. {
  824. "successCriteria": "3.1.2 Lengua de las partes",
  825. "link": "https://www.w3.org/WAI/WCAG21/Understanding/language-of-parts.html",
  826. "wcagLevel": "AA",
  827. "wcagVersion": "2.0",
  828. "test": "content in a different language than the page default must be identified using the lang attribute",
  829. "category": [
  830. "structure"
  831. ]
  832. },
  833. {
  834. "successCriteria": "3.2.1 Enfoque",
  835. "link": "https://www.w3.org/WAI/WCAG21/Understanding/on-focus.html",
  836. "wcagLevel": "A",
  837. "wcagVersion": "2.0",
  838. "test": "when an elements receives focus it must not result in a substantial clientside change to the page",
  839. "category": [
  840. "forms-and-UI"
  841. ]
  842. },
  843. {
  844. "successCriteria": "3.2.2 En la entrada",
  845. "link": "https://www.w3.org/WAI/WCAG21/Understanding/on-input.html",
  846. "wcagLevel": "A",
  847. "wcagVersion": "2.0",
  848. "test": "user initiated input must not result in a substantial clientside change to the page",
  849. "category": [
  850. "forms-and-UI"
  851. ]
  852. },
  853. {
  854. "successCriteria": "3.2.3 Navegación coherente",
  855. "link": "https://www.w3.org/WAI/WCAG21/Understanding/consistent-navigation.html",
  856. "wcagLevel": "AA",
  857. "wcagVersion": "2.0",
  858. "test": "repeated navigation patterns are applied in the same relative order across multiple pages",
  859. "category": [
  860. "structure"
  861. ]
  862. },
  863. {
  864. "successCriteria": "3.2.4 Identificación coherente",
  865. "link": "https://www.w3.org/WAI/WCAG21/Understanding/consistent-identification.html",
  866. "wcagLevel": "AA",
  867. "wcagVersion": "2.0",
  868. "test": "elements with the same functionality are applied consistently across multiple pages",
  869. "category": [
  870. "structure"
  871. ]
  872. },
  873. {
  874. "successCriteria": "3.3.1 Identificación de errores",
  875. "link": "https://www.w3.org/WAI/WCAG21/Understanding/error-identification.html",
  876. "wcagLevel": "A",
  877. "wcagVersion": "2.0",
  878. "test": "intuitive text based alerts must be provided for form validation cues and errors",
  879. "category": [
  880. "forms-and-UI"
  881. ]
  882. },
  883. {
  884. "successCriteria": "3.3.2 Etiquetas o instrucciones",
  885. "link": "https://www.w3.org/WAI/WCAG21/Understanding/labels-or-instructions.html",
  886. "wcagLevel": "A",
  887. "wcagVersion": "2.0",
  888. "test": "a text label (not necessarily a label element) must be provided for form fields",
  889. "category": [
  890. "forms-and-UI"
  891. ]
  892. },
  893. {
  894. "successCriteria": "3.3.2 Etiquetas o instrucciones",
  895. "link": "https://www.w3.org/WAI/WCAG21/Understanding/labels-or-instructions.html",
  896. "wcagLevel": "A",
  897. "wcagVersion": "2.0",
  898. "test": "sufficient instructions must be provided for form fields",
  899. "category": [
  900. "forms-and-UI"
  901. ]
  902. },
  903. {
  904. "successCriteria": "3.3.2 Etiquetas o instrucciones",
  905. "link": "https://www.w3.org/WAI/WCAG21/Understanding/labels-or-instructions.html",
  906. "wcagLevel": "A",
  907. "wcagVersion": "2.0",
  908. "test": "a text label (not necessarily a label element), instructions or error message must be provided for required form fields",
  909. "category": [
  910. "forms-and-UI"
  911. ]
  912. },
  913. {
  914. "successCriteria": "3.3.3 Sugerencia de error",
  915. "link": "https://www.w3.org/WAI/WCAG21/Understanding/error-suggestion.html",
  916. "wcagLevel": "AA",
  917. "wcagVersion": "2.0",
  918. "test": "all clientside detected errors provide suggestions to fix the errors",
  919. "category": [
  920. "forms-and-UI"
  921. ]
  922. },
  923. {
  924. "successCriteria": "3.3.3 Sugerencia de error",
  925. "link": "https://www.w3.org/WAI/WCAG21/Understanding/error-suggestion.html",
  926. "wcagLevel": "AA",
  927. "wcagVersion": "2.0",
  928. "test": "all clientside detected errors are provided in an accessible manner",
  929. "category": [
  930. "forms-and-UI"
  931. ]
  932. },
  933. {
  934. "successCriteria": "3.3.4 Prevención de errores (datos financieros legales)",
  935. "link": "https://www.w3.org/WAI/WCAG21/Understanding/error-prevention-legal-financial-data.html",
  936. "wcagLevel": "AA",
  937. "wcagVersion": "2.0",
  938. "test": "a mechanism exists to reverse any legal, financial or data transaction mistakes",
  939. "category": [
  940. "content"
  941. ]
  942. },
  943. {
  944. "successCriteria": "3.3.4 Prevención de errores (datos financieros legales)",
  945. "link": "https://www.w3.org/WAI/WCAG21/Understanding/error-prevention-legal-financial-data.html",
  946. "wcagLevel": "AA",
  947. "wcagVersion": "2.0",
  948. "test": "or, a mechanism exists to review and correct any legal, financial or data transaction",
  949. "category": [
  950. "content"
  951. ]
  952. },
  953. {
  954. "successCriteria": "4.1.1 Análisis sintáctico",
  955. "link": "https://www.w3.org/WAI/WCAG21/Understanding/parsing.html",
  956. "wcagLevel": "A",
  957. "wcagVersion": "2.0",
  958. "test": "HTML elements must have complete start and end tags",
  959. "category": [
  960. "structure"
  961. ]
  962. },
  963. {
  964. "successCriteria": "4.1.1 Análisis sintáctico",
  965. "link": "https://www.w3.org/WAI/WCAG21/Understanding/parsing.html",
  966. "wcagLevel": "A",
  967. "wcagVersion": "2.0",
  968. "test": "elements must be nested according to specification",
  969. "category": [
  970. "structure"
  971. ]
  972. },
  973. {
  974. "successCriteria": "4.1.1 Análisis sintáctico",
  975. "link": "https://www.w3.org/WAI/WCAG21/Understanding/parsing.html",
  976. "wcagLevel": "A",
  977. "wcagVersion": "2.0",
  978. "test": "elements must not contain duplicate attributes",
  979. "category": [
  980. "structure"
  981. ]
  982. },
  983. {
  984. "successCriteria": "4.1.1 Análisis sintáctico",
  985. "link": "https://www.w3.org/WAI/WCAG21/Understanding/parsing.html",
  986. "wcagLevel": "A",
  987. "wcagVersion": "2.0",
  988. "test": "element ID's must be unique",
  989. "category": [
  990. "structure"
  991. ]
  992. },
  993. {
  994. "successCriteria": "4.1.2 Nombre Función Valor",
  995. "link": "https://www.w3.org/WAI/WCAG21/Understanding/name-role-value.html",
  996. "wcagLevel": "A",
  997. "wcagVersion": "2.0",
  998. "test": "user interface elements are used according to their specification",
  999. "category": [
  1000. "custom-controls",
  1001. "forms-and-UI"
  1002. ]
  1003. },
  1004. {
  1005. "successCriteria": "4.1.2 Nombre Función Valor",
  1006. "link": "https://www.w3.org/WAI/WCAG21/Understanding/name-role-value.html",
  1007. "wcagLevel": "A",
  1008. "wcagVersion": "2.0",
  1009. "test": "or, custom controls follow the https://www.w3.org/TR/wai-aria-practices-1.1/",
  1010. "category": [
  1011. "custom-controls"
  1012. ]
  1013. },
  1014. {
  1015. "successCriteria": "4.1.2 Nombre Función Valor",
  1016. "link": "https://www.w3.org/WAI/WCAG21/Understanding/name-role-value.html",
  1017. "wcagLevel": "A",
  1018. "wcagVersion": "2.0",
  1019. "test": "a programmatic name, role and value exists for all user interface components",
  1020. "category": [
  1021. "custom-controls",
  1022. "forms-and-UI"
  1023. ]
  1024. },
  1025. {
  1026. "successCriteria": "4.1.3 Mensajes de estado",
  1027. "link": "https://www.w3.org/WAI/WCAG21/Understanding/status-messages.html",
  1028. "wcagLevel": "AA",
  1029. "wcagVersion": "2.1",
  1030. "test": "all client-side updated success or action outcome messages use role=status",
  1031. "category": [
  1032. "custom-controls"
  1033. ]
  1034. },
  1035. {
  1036. "successCriteria": "4.1.3 Mensajes de estado",
  1037. "link": "https://www.w3.org/WAI/WCAG21/Understanding/status-messages.html",
  1038. "wcagLevel": "AA",
  1039. "wcagVersion": "2.1",
  1040. "test": "all client-side updated error or warning messages use role=alert",
  1041. "category": [
  1042. "custom-controls"
  1043. ]
  1044. },
  1045. {
  1046. "successCriteria": "4.1.3 Mensajes de estado",
  1047. "link": "https://www.w3.org/WAI/WCAG21/Understanding/status-messages.html",
  1048. "wcagLevel": "AA",
  1049. "wcagVersion": "2.1",
  1050. "test": "all client-side updated log or progress messages use role=log",
  1051. "category": [
  1052. "custom-controls"
  1053. ]
  1054. }
  1055. ]
  1056. }