Matriz de cobertura
Qué evaluamos de forma automática, qué solo en parte y qué debe hacer una persona
Todo escáner de accesibilidad encuentra solo una parte de lo que encuentra una auditoría. En lugar de dejarlo vago, aquí lo indicamos por cada criterio WCAG 2.2 A/AA: qué infracciones encuentra nuestro escáner por sí mismo, dónde aparta casos para revisarlos y dónde no puede juzgar en absoluto. Basado en lo que el escáner ejecuta realmente, no en lo que nos gustaría.
Versión 1.0 · 2026-09-27 · WCAG 2.2 A/AA · axe-core 4.12.0
Esto no es una declaración de conformidad
Un escaneo limpio no significa que una página cumpla con WCAG. La evaluación automática cubre aproximadamente la mitad de lo que encuentra una auditoría hecha por un experto, y varios criterios solo puede valorarlos una persona que use el sitio. Lee esta matriz como una descripción del instrumento, no como un certificado.
- automático
- 2 / 55
- El escáner encuentra por sí mismo y con certeza las infracciones habituales; lo que se le escapa es raro.
- parcialmente automático
- 21 / 55
- El escáner encuentra con certeza una parte de las infracciones y aparta los casos dudosos para una persona; el resto es trabajo humano.
- criterio humano
- 32 / 55
- Sin evaluación automática; solo una persona que use el sitio puede valorarlo.
- Reglas que se ejecutan
- 70
- Reglas de axe-core vinculadas a WCAG 2.2 A/AA que ejecuta cada escaneo.
Así se lee la tabla: el criterio (título oficial de WCAG), su nivel, cómo lo cubrimos y, en una frase, qué ve y qué no ve la máquina, seguido de los nombres de las reglas para que un especialista pueda comprobarlas en la documentación de axe-core. «Corrección disponible» marca los criterios para los que nuestra app de Shopify propone un cambio listo para usar en el código del tema.
1. Perceptible
| Criterio | Nivel | Cobertura | Qué ve la máquina y qué no |
|---|---|---|---|
| 1.1.1 Non-text Content | A | parcialmente automáticoCorrección disponible en la app de Shopify | Finds images, image buttons, SVGs and objects without a text alternative. Whether an existing alt text is accurate or an image is truly decorative needs a person. image-alt · input-image-alt · object-alt · role-img-alt · svg-img-alt · aria-meter-name · aria-progressbar-name |
| 1.2.1 Audio-only and Video-only (Prerecorded) | A | parcialmente automático | Flags <audio> elements without a captions track. Transcripts placed elsewhere on the page are not detected. audio-caption |
| 1.2.2 Captions (Prerecorded) | A | parcialmente automático | Flags <video> elements without a captions track. Embedded players (YouTube, Vimeo) and open captions burned into the picture need a person. video-caption |
| 1.2.3 Audio Description or Media Alternative (Prerecorded) | A | criterio humano | No automated test exists for the presence or quality of audio description. |
| 1.2.4 Captions (Live) | AA | criterio humano | Live media cannot be assessed by a page scan. |
| 1.2.5 Audio Description (Prerecorded) | AA | criterio humano | No automated test exists for audio description. |
| 1.3.1 Info and Relationships | A | parcialmente automáticoCorrección disponible en la app de Shopify | Finds broken lists, description lists, table header relationships and ARIA parent/child structures. Whether headings, landmarks and form groupings reflect the visual structure needs a person. list · listitem · definition-list · dlitem · aria-required-children · aria-required-parent · td-has-header · td-headers-attr · th-has-data-cells · table-fake-caption · p-as-heading · aria-hidden-body |
| 1.3.2 Meaningful Sequence | A | criterio humano | Reading order versus visual order is not machine-decidable. |
| 1.3.3 Sensory Characteristics | A | criterio humano | Instructions that rely on shape, colour or position ("click the round button") need a person to spot. |
| 1.3.4 Orientation | AA | parcialmente automático | Finds CSS that locks the page to one orientation. Scripts that do the same are not detected. css-orientation-lock |
| 1.3.5 Identify Input Purpose | AA | parcialmente automático | Checks that autocomplete values are valid. Whether a field that should carry one is missing it needs a person. autocomplete-valid |
| 1.4.1 Use of Color | A | parcialmente automático | Finds links in running text that differ from the text by colour alone. Colour-only meaning in charts, forms and status needs a person. link-in-text-block |
| 1.4.2 Audio Control | A | parcialmente automático | Finds media that autoplays with sound for more than three seconds without controls. no-autoplay-audio |
| 1.4.3 Contrast (Minimum) | AA | parcialmente automático | Measures text contrast against solid backgrounds. Text over images, gradients or overlapping layers is set aside for a person to check. color-contrast |
| 1.4.4 Resize Text | AA | parcialmente automáticoCorrección disponible en la app de Shopify | Finds the viewport setting that blocks zooming. Whether the page still works at 200% needs a person. meta-viewport |
| 1.4.5 Images of Text | AA | criterio humano | Whether an image contains text is not machine-decidable in this scanner. |
| 1.4.10 Reflow | AA | criterio humano | Requires viewing the page at 320 CSS pixels wide; not part of the scan. |
| 1.4.11 Non-text Contrast | AA | criterio humano | Contrast of icons, borders and controls is not measured. |
| 1.4.12 Text Spacing | AA | parcialmente automático | Finds inline styles that prevent users from overriding text spacing. Whether content breaks when spacing is increased needs a person. avoid-inline-spacing |
| 1.4.13 Content on Hover or Focus | AA | criterio humano | Tooltip and popover behaviour needs interaction to assess. |
2. Operable
| Criterio | Nivel | Cobertura | Qué ve la máquina y qué no |
|---|---|---|---|
| 2.1.1 Keyboard | A | parcialmente automático | Finds scroll areas and frames that keyboard users cannot reach. Custom controls that only work with a mouse need a person. scrollable-region-focusable · frame-focusable-content · server-side-image-map |
| 2.1.2 No Keyboard Trap | A | criterio humano | Keyboard traps only show when tabbing through the page. |
| 2.1.4 Character Key Shortcuts | A | criterio humano | Single-key shortcuts are not detectable from the page. |
| 2.2.1 Timing Adjustable | A | parcialmente automático | Finds pages that refresh or redirect on a timer. Session time-outs and countdowns in scripts need a person. meta-refresh |
| 2.2.2 Pause, Stop, Hide | A | parcialmente automático | Finds the blink and marquee elements. Carousels and animations need a person. blink · marquee |
| 2.3.1 Three Flashes or Below Threshold | A | criterio humano | Flashing content cannot be measured by a page scan. |
| 2.4.1 Bypass Blocks | A | parcialmente automático | Checks for a skip link, landmarks or headings. Whether the skip link actually works needs a person. bypass |
| 2.4.2 Page Titled | A | automático | Finds pages without a title. Whether the title is descriptive is a judgement, but a missing one is certain. document-title |
| 2.4.3 Focus Order | A | criterio humano | Focus order needs tabbing through the page. |
| 2.4.4 Link Purpose (In Context) | A | parcialmente automáticoCorrección disponible en la app de Shopify | Finds links and image-map areas without any accessible name. Whether "read more" makes sense in context needs a person. link-name · area-alt |
| 2.4.5 Multiple Ways | AA | criterio humano | Whether there is a second way to reach pages (search, sitemap, navigation) is a site-level judgement. |
| 2.4.6 Headings and Labels | AA | criterio humano | Descriptiveness of headings and labels is not machine-decidable. |
| 2.4.7 Focus Visible | AA | criterio humano | Needs the page to be operated with a keyboard while watching the focus indicator. |
| 2.4.11 Focus Not Obscured (Minimum) | AA | criterio humano | Sticky headers and cookie bars covering the focused element only show when tabbing. |
| 2.5.1 Pointer Gestures | A | criterio humano | Multipoint and path gestures are not detectable from the page. |
| 2.5.2 Pointer Cancellation | A | criterio humano | Down-event behaviour needs interaction to assess. |
| 2.5.3 Label in Name | A | parcialmente automático | Finds controls whose accessible name does not contain their visible text. label-content-name-mismatch |
| 2.5.4 Motion Actuation | A | criterio humano | Motion-triggered functions are not detectable from the page. |
| 2.5.7 Dragging Movements | AA | criterio humano | Whether drag actions have a single-pointer alternative needs a person. |
| 2.5.8 Target Size (Minimum) | AA | parcialmente automático | Measures whether targets meet 24×24 CSS pixels or have enough spacing. Inline links in text are exempt and skipped. target-size |
3. Comprensible
| Criterio | Nivel | Cobertura | Qué ve la máquina y qué no |
|---|---|---|---|
| 3.1.1 Language of Page | A | automático | Finds a missing or invalid page language. Whether the declared language is the right one is a judgement, but a missing one is certain. html-has-lang · html-lang-valid · html-xml-lang-mismatch |
| 3.1.2 Language of Parts | A | parcialmente automático | Checks that lang attributes on parts are valid. Passages in another language without a lang attribute need a person. valid-lang |
| 3.2.1 On Focus | A | criterio humano | Context changes on focus need interaction to assess. |
| 3.2.2 On Input | A | criterio humano | Context changes on input need interaction to assess. |
| 3.2.3 Consistent Navigation | AA | criterio humano | Consistency across pages is a site-level judgement. |
| 3.2.4 Consistent Identification | AA | criterio humano | Consistency of components across pages is a site-level judgement. |
| 3.2.6 Consistent Help | A | criterio humano | Placement of help across pages is a site-level judgement. |
| 3.3.1 Error Identification | A | criterio humano | Error messages only appear after submitting a form. |
| 3.3.2 Labels or Instructions | A | parcialmente automático | Finds fields with conflicting labels; fields without any name are reported under 4.1.2 (label, select-name). Whether instructions are sufficient needs a person. form-field-multiple-labels |
| 3.3.3 Error Suggestion | AA | criterio humano | Only observable after submitting invalid input. |
| 3.3.4 Error Prevention (Legal, Financial, Data) | AA | criterio humano | Confirmation and reversal steps in checkout need a person. |
| 3.3.7 Redundant Entry | A | criterio humano | Repeated data entry across a process needs a person. |
| 3.3.8 Accessible Authentication (Minimum) | AA | criterio humano | Cognitive tests in login flows need a person. |
4. Robusto
| Criterio | Nivel | Cobertura | Qué ve la máquina y qué no |
|---|---|---|---|
| 4.1.2 Name, Role, Value | A | parcialmente automáticoCorrección disponible en la app de Shopify | The broadest machine coverage: names of buttons, links, fields and frames, valid ARIA roles and attributes, hidden-but-focusable content, nested controls. Whether states (expanded, selected) are kept up to date by scripts needs a person. button-name · link-name · label · select-name · input-button-name · input-image-alt · frame-title · frame-title-unique · summary-name · aria-allowed-attr · aria-required-attr · aria-roles · aria-valid-attr · aria-valid-attr-value · aria-prohibited-attr · aria-conditional-attr · aria-deprecated-role · aria-hidden-focus · aria-hidden-body · aria-command-name · aria-input-field-name · aria-tab-name · aria-toggle-field-name · aria-tooltip-name · aria-roledescription · aria-braille-equivalent · duplicate-id-aria · nested-interactive · area-alt |
| 4.1.3 Status Messages | AA | criterio humano | Whether status messages are announced needs interaction to assess. |
Método y control de versiones
El escáner carga una página en un navegador real, igual que lo hace un visitante, y ejecuta axe-core con los conjuntos de reglas para WCAG 2.2 A y AA. La vinculación entre regla y criterio de esta tabla proviene directamente de los metadatos de axe-core; la clasificación en automático, parcialmente automático y criterio humano es nuestro juicio profesional y se indica como tal.
Los resultados que axe-core no puede decidir (por ejemplo, texto sobre una imagen) aparecen en cada informe como puntos que requieren revisión manual, no ocultos y no contados como superados.
Esta matriz lleva una versión y una fecha. Cambia cuando cambian la versión de axe-core, los conjuntos de reglas o nuestra clasificación, de modo que dos ediciones se puedan comparar.