Diferencia entre revisiones de «Principio 2/2.4 Navegable/2.4.1-A»

De WCAG Wiki
Sin resumen de edición
Sin resumen de edición
 
(No se muestran 5 ediciones intermedias del mismo usuario)
Línea 4: Línea 4:
|wcag_titulo_criterio=2.4.1-A. Saltar bloques repetidos
|wcag_titulo_criterio=2.4.1-A. Saltar bloques repetidos
|wcag_nivel=A
|wcag_nivel=A
|wcag_version=2.2
|wcag_version=2.0
|wcag_principio=2_Operable
|wcag_principio=2_Operable
|wcag_principio_url=Principio_2
|wcag_principio_url=Principio_2
|wcag_pauta=2.4_Navegacion_clara
|wcag_pauta=2.4_Navegable
|wcag_pauta_url=Principio_2/2.4_Navegacion_clara
|wcag_pauta_url=Principio_2/2.4_Navegable
|wcag_grupo=Navegación
|wcag_grupo=Navegación
|wcag_subgrupo=Estructura_y_saltos
|wcag_subgrupo=Estructura_y_saltos
Línea 22: Línea 22:
   [[Archivo:Cognitiva.png|20px|class=icon-discapacidad|alt=Discapacidad cognitiva]]
   [[Archivo:Cognitiva.png|20px|class=icon-discapacidad|alt=Discapacidad cognitiva]]
   <span class="discapacidad-texto">[[:Categoría:Discapacidad cognitiva|Cognitiva]]</span> –  
   <span class="discapacidad-texto">[[:Categoría:Discapacidad cognitiva|Cognitiva]]</span> –  
   <span class="gravedad gravedad-grave">Barrera grave</span>
   <span class="gravedad gravedad-leve">Barrera leve</span>
</li>
</li>
<li class="discapacidad-item">
<li class="discapacidad-item">
   [[Archivo:Bajavision.png|20px|class=icon-discapacidad|alt=Baja visión]]
   [[Archivo:Bajavision.png|20px|class=icon-discapacidad|alt=Baja visión]]
   <span class="discapacidad-texto">[[:Categoría:Discapacidad baja visión|Baja visión]]</span> –  
   <span class="discapacidad-texto">[[:Categoría:Discapacidad baja visión|Baja visión]]</span> –  
   <span class="gravedad gravedad-moderada">Barrera moderada</span>
   <span class="gravedad gravedad-leve">Barrera leve</span>
</li>
</li>
<li class="discapacidad-item">
<li class="discapacidad-item">
   [[Archivo:Sinvision.png|20px|class=icon-discapacidad|alt=Discapacidad visual total]]
   [[Archivo:Sinvision.png|20px|class=icon-discapacidad|alt=Discapacidad visual total]]
   <span class="discapacidad-texto">[[:Categoría:Discapacidad visual total|Visual total]]</span> –  
   <span class="discapacidad-texto">[[:Categoría:Discapacidad visual total|Visual total]]</span> –  
   <span class="gravedad gravedad-moderada">Barrera moderada</span>
   <span class="gravedad gravedad-grave">Barrera grave</span>
</li>
</li>
<li class="discapacidad-item">
<li class="discapacidad-item">
   [[Archivo:Auditiva.png|20px|class=icon-discapacidad|alt=Discapacidad auditiva]]
   [[Archivo:sordoceguera.png|20px|class=icon-discapacidad|alt=Discapacidad sordoceguera]]
   <span class="discapacidad-texto">[[:Categoría:Discapacidad auditiva|Auditiva]]</span> –  
   <span class="discapacidad-texto">[[:Categoría:Discapacidad sordoceguera|Sordoceguera]]</span>
   <span class="gravedad gravedad-leve">Barrera leve</span>
 
   <span class="gravedad gravedad-grave">Barrera grave</span>
</li>
</li>


|wcag_lista_discapacidades=
|wcag_lista_discapacidades=
Línea 45: Línea 47:
[[Categoría:Discapacidad baja visión]]
[[Categoría:Discapacidad baja visión]]
[[Categoría:Discapacidad visual total]]
[[Categoría:Discapacidad visual total]]
[[Categoría:Discapacidad auditiva]]
[[Categoría:Discapacidad sordoceguera]]


|wcag_texto_criterioOAW=
|wcag_texto_criterioOAW=
Se debe permitir saltar los bloques de contenido repetido en múltiples páginas web, bien agrupando el contenido repetido de forma que los productos de apoyo lo puedan saltar (por ejemplo, usando encabezados al comienzo de cada sección de contenido) o bien mediante la creación de enlaces de salto.
Se debe permitir saltar los bloques de contenido repetido en múltiples páginas web, bien agrupando el contenido repetido de forma que los productos de apoyo lo puedan saltar (p. ej. usando encabezados al comienzo de cada sección de contenido) o bien mediante la creación de enlaces de salto
 


|wcag_descripcion_resumida=
|wcag_descripcion_resumida=
Línea 61: Línea 64:
|wcag_referencias=
|wcag_referencias=
<ul>
<ul>
<li><span lang="en">[https://www.w3.org/WAI/WCAG22/Understanding/bypass-blocks.html Understanding Success Criterion 2.4.1]</span></li>
<li><span lang="en">[https://www.w3.org/WAI/WCAG21/Techniques/html/H69 H69: Providing heading elements at the beginning of each section of content]</span></li>
<li><span lang="en">[https://www.w3.org/WAI/WCAG22/quickref/#bypass-blocks WCAG Quick Reference – 2.4.1]</span></li>
<li><span lang="en">[https://www.w3.org/WAI/WCAG21/Techniques/html/H70 H70: Using frame elements to group blocks of repeated material]</span></li>
<li><span lang="en">[https://www.w3.org/WAI/WCAG21/Techniques/html/H64 H64: Using the title attribute of the frame and iframe elements]</span></li>
<li><span lang="en">[https://www.w3.org/WAI/WCAG21/Techniques/client-side-script/SCR28 SCR28: Using an expandable and collapsible menu to bypass a block of content]</span></li>
<li><span lang="en">[https://www.w3.org/WAI/WCAG21/Techniques/general/G1 G1: Adding a link at the top of each page that goes directly to the main content]</span></li>
<li><span lang="en">[https://www.w3.org/WAI/WCAG21/Techniques/general/G123 G123: Adding a link at the beginning of a block of repeated content to go to the end of the block]</span></li>
<li><span lang="en">[https://www.w3.org/WAI/WCAG21/Techniques/general/G124 G124: Adding links at the top of the page to each area of the content]</span></li>
</ul>
</ul>


|wcag_recursos=
|wcag_recursos=  
<ul>
<ul>
<li>[https://webaim.org/techniques/skipnav/ WebAIM — Skip Navigation]</li>
<li>[https://webaim.org/techniques/skipnav/ WebAIM — Skip Navigation]</li>
<li>[https://dequeuniversity.com/rules/axe/skip-link axe-core — Skip Link]</li>
</ul>
</ul>


|wcag_tipo_evaluacion=Semiautomática
|wcag_tipo_evaluacion=Manual


|wcag_pasos_evaluacion=
|wcag_pasos_evaluacion=
<ol class="paso-list">
<ol class="paso-list">
<li>Identificar bloques repetidos (menú, header, sidebar).</li>
<li><span class="paso-badge">Paso 1.</span>
<li>Comprobar si existe un enlace para saltar al contenido.</li>
Localizar en la página los bloques de contenido repetido.
<li>Verificar que el enlace aparece al recibir foco (Tab).</li>
</li>
<li>Confirmar que lleva al área principal (id="main" / &lt;main&gt;).</li>
 
<li>Comprobar que funciona con teclado y lector de pantalla.</li>
<li><span class="paso-badge">Paso 2.</span>
Verificar que existe algún medio para que los productos de apoyo puedan ignorarlos (enlaces de salto a contenido o landmarks).
</li>
</ol>
</ol>


|wcag_resultado_evaluacion=
|wcag_resultado_evaluacion=
Existe un mecanismo visible al foco para saltar bloques repetidos y funciona correctamente.
Existe un mecanismo visible y foco para saltar bloques repetidos y funciona correctamente.


|wcag_ejemplo_evaluacion=
|wcag_ejemplo_evaluacion=
<div class="accessibility-card">
<div class="accessibility-card">
<strong>✅ Accesible</strong>
Este ejemplo añade un enlace al inicio de la página que permite saltar directamente al contenido principal, evitando tener que pasar por el menú y otros elementos repetidos cuando se navega con teclado o lector de pantalla.
<br/>
HTML:
<pre class="wcag-codigo-html">
<pre class="wcag-codigo-html">
<a href="#main" class="skip-link">Saltar al contenido principal</a>
<a href="#main" class="skip-link">Saltar al contenido principal</a>
<nav> </nav>
<header>
<main id="main">Contenido principal…</main>
  <h1>Mi sitio Web</h1>
</header>
<nav>
  <ul>
    <li><a href="#">Inicio</a></li>
    <li><a href="#">Cursos</a></li>
    <li><a href="#">Contacto</a></li>
  </ul>
</nav>
 
<main id="main" tabindex="-1">
  <h2>Contenido principal</h2>
  <p>Bienvenido a nuestro sitio web accesible.</p>
</main>
</pre>
</pre>
</div>


<div class="accessibility-card">
CSS:
<strong>❌ No accesible</strong>
<pre class="wcag-codigo-html">
<pre class="wcag-codigo-html">
<nav> … menú … </nav>
.skip-link {
<main>Contenido</main>
  position: absolute;
  top: -40px;
  left: 0;
  padding: 8px;
  background: #000;
  color: #fff;
  text-decoration: none;
  z-index: 100;
}
 
.skip-link:focus {
  top: 0;
}
</pre>
</pre>
</div>
</div>


|wcag_otras_herramientas_evaluacion=
|wcag_otras_herramientas_evaluacion=
<ul>
<ul>
<li>AXE, WAVE, Accessibility Insights</li>
<li>
<li>Pruebas con NVDA, JAWS, VoiceOver</li>
<strong>Bookmarklet</strong><br>
<li>Tab para comprobar aparición y funcionamiento del enlace</li>
 
<li>Verificar uso de &lt;main&gt; y encabezados estructurales</li>
<html>
<div class="highlight-box">
Clica o arrastra este botón a tu barra de marcadores y podrás ver si la página tiene enlace de salto al contenido. <br>
 
<a class="bookmarklet-button" href="javascript:(function(){document.querySelectorAll('#wai-styles,#wai-info-box,.skiplink-span').forEach(a=>{a.remove()});document.body.insertAdjacentHTML('afterbegin','<style id=&quot;wai-styles&quot;>#wai-info-box{z-index:1000;color:black;font-family:Noto Sans,Trebuchet MS,Helvetica Neue,Arial,sans-serif;border:solid 1px #ddd;background-color:#fff;box-shadow:0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);}#wai-info-box header{font-weight:700;background-color:#f2f2f2;color:#005a6a;padding:8px 16px;}#wai-info-box header a{float:right;text-decoration:none}#wai-info-box div{padding:8px 16px;}.wai-more-info{position:fixed;bottom:5em;right:5em;}.wai-error{position:fixed;width:40%;top:40%;left:50%;transform:translate(-50%,-50%);}.skiplink-span{color:black;font-weight:bold;font-size:small;background-color:#eed009;margin:0 2px;padding:2px;}.wai-highlight{outline:#eed009 2px dashed}</style>');let msg='';const b=document.querySelector('a[href^=&quot;#&quot;]');if(b){if(b.offsetWidth||b.offsetHeight||b.getClientRects().length||getComputedStyle(b).visibility!='hidden'){b.setAttribute('data-style',b.getAttribute('style'));let st='';b.style.transition='none';b.focus();let cs=getComputedStyle(b);for(let i=0;i<cs.length;i++){st+=cs[i]+':'+cs.getPropertyValue(cs[i])+';'}b.setAttribute('style',st);}const id=b.getAttribute('href').substring(1),target=document.querySelector('#'+id);if(!target){msg='No hay destino para el enlace de salto';}b.classList.add('wai-highlight');if(target)target.classList.add('wai-highlight');b.insertAdjacentHTML('beforebegin','<span class=&quot;skiplink-span&quot;>El enlace de salto conecta con id=&quot;'+id+'&quot;</span>');if(target)target.insertAdjacentHTML('afterbegin','<span class=&quot;skiplink-span&quot;>El enlace de salto conecta aquí</span>')}else{msg='No se han encontrado enlaces de salto en la página'}if(msg){document.body.insertAdjacentHTML('afterbegin','<aside id=&quot;wai-info-box&quot; tabindex=&quot;-1&quot; class=&quot;wai-error&quot;><header>¿Falta el enlace de salto?<a href=javascript:document.querySelector('#wai-info-box').remove(); aria-label=&quot;cerrar&quot;>X</a></header><div>'+msg+'</div></aside>')}document.body.insertAdjacentHTML('beforeend','<aside id=&quot;wai-info-box&quot; class=&quot;wai-more-info&quot;><header>Más información<a href=javascript:document.querySelectorAll('#wai-styles,#wai-info-box,.skiplink-span').forEach(el=>el.remove());document.querySelectorAll('[data-style]').forEach(el=>el.setAttribute('style',el.getAttribute('data-style'))); aria-label=&quot;cerrar&quot;>X</a></header><div><a href=&quot;https://w3.org/wai/test-evaluate/easy-checks/skip-link/&quot; target=&quot;_blank&quot;>Comprobación de enlaces de salto</a></div></aside>');})();">
Comprobar si hay salto de contenido
</a>
 
 
</div>
</html>
</li>
 
<li>'''Prueba con teclado''': pulsar <kbd>Tab</kbd> al principio de la página y comprobar que aparece un enlace de salto visible (p. ej. “Saltar al contenido principal”) o que se puede saltar la navegación repetida de otra forma.</li>
<li>'''Inspección del navegador''': verificar la existencia de enlaces de salto y una estructura clara del documento con encabezados (<code>&lt;h1&gt;</code>, <code>&lt;h2&gt;</code>…) que permitan a los productos de apoyo saltar bloques repetidos.</li>
<li>'''Lectores de pantalla''': (NVDA, JAWS, VoiceOver) navegar usando atajos de regiones/encabezados para confirmar que se puede llegar rápidamente al contenido principal sin pasar por menús repetidos.</li>
<li>'''Validadores y herramientas''': usar DevTools o extensiones de accesibilidad para comprobar que elementos como <code>&lt;header&gt;</code>, <code>&lt;nav&gt;</code> y <code>&lt;main&gt;</code> están correctamente definidos para soportar saltos semánticos.</li>
</ul>
</ul>
}}
}}

Revisión actual - 12:43 6 nov 2025

2.4.1-A. Saltar bloques repetidos

Discapacidades afectadas

Este criterio puede afectar a distintas personas con discapacidad. A continuación se indican las más relevantes.

Enunciado del criterio (Observatorio de Accesibilidad Web)

  • Se debe permitir saltar los bloques de contenido repetido en múltiples páginas web, bien agrupando el contenido repetido de forma que los productos de apoyo lo puedan saltar (p. ej. usando encabezados al comienzo de cada sección de contenido) o bien mediante la creación de enlaces de salto

Comprensión del criterio

Descripción resumida

Los usuarios deben poder saltar el contenido repetido (como menús o cabeceras) y acceder directamente al contenido principal mediante enlaces de salto o estructura semántica adecuada.

Objetivo

Facilitar que los usuarios que navegan secuencialmente con teclado o lector de pantalla puedan ir directamente al contenido principal sin recorrer elementos repetidos.

Importancia de cumplir el criterio

Sin enlaces de salto o estructura adecuada, los usuarios deben recorrer repetidamente navegación y bloques fijos, lo que ralentiza la interacción y genera fatiga cognitiva y motriz.

Referencias WCAG

Recursos de apoyo

Evaluación del criterio

Tipo de evaluación

Evaluación Manual

Procedimiento de evaluación

  1. Paso 1. Localizar en la página los bloques de contenido repetido.
  2. Paso 2. Verificar que existe algún medio para que los productos de apoyo puedan ignorarlos (enlaces de salto a contenido o landmarks).

Resultado esperado

Existe un mecanismo visible y foco para saltar bloques repetidos y funciona correctamente.

Ejemplo

Este ejemplo añade un enlace al inicio de la página que permite saltar directamente al contenido principal, evitando tener que pasar por el menú y otros elementos repetidos cuando se navega con teclado o lector de pantalla.
HTML:

<a href="#main" class="skip-link">Saltar al contenido principal</a>
<header>
  <h1>Mi sitio Web</h1>
</header>
<nav>
  <ul>
    <li><a href="#">Inicio</a></li>
    <li><a href="#">Cursos</a></li>
    <li><a href="#">Contacto</a></li>
  </ul>
</nav>

<main id="main" tabindex="-1">
  <h2>Contenido principal</h2>
  <p>Bienvenido a nuestro sitio web accesible.</p>
</main>

CSS:

.skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  padding: 8px;
  background: #000;
  color: #fff;
  text-decoration: none;
  z-index: 100;
}

.skip-link:focus {
  top: 0;
}


Otras herramientas de evaluación

  • Bookmarklet
    Clica o arrastra este botón a tu barra de marcadores y podrás ver si la página tiene enlace de salto al contenido.
    Comprobar si hay salto de contenido
  • Prueba con teclado: pulsar Tab al principio de la página y comprobar que aparece un enlace de salto visible (p. ej. “Saltar al contenido principal”) o que se puede saltar la navegación repetida de otra forma.
  • Inspección del navegador: verificar la existencia de enlaces de salto y una estructura clara del documento con encabezados (<h1>, <h2>…) que permitan a los productos de apoyo saltar bloques repetidos.
  • Lectores de pantalla: (NVDA, JAWS, VoiceOver) navegar usando atajos de regiones/encabezados para confirmar que se puede llegar rápidamente al contenido principal sin pasar por menús repetidos.
  • Validadores y herramientas: usar DevTools o extensiones de accesibilidad para comprobar que elementos como <header>, <nav> y <main> están correctamente definidos para soportar saltos semánticos.










Ejemplos accesibles y no accesibles creados por alumnos

Comentarios

A continuación se muestran comentarios sobre el criterio 2.4.1-A. Saltar bloques repetidos

Loading comments...