@surea11y/core 1.5.0 → 1.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +193 -149
- package/README.md +27 -6
- package/docs/ACT_RULE_MAPPING.md +243 -0
- package/docs/API_STABILITY.md +2 -2
- package/docs/BINDING_AUTHORS_GUIDE.md +3 -3
- package/docs/DESIGN_CHALLENGES.md +301 -0
- package/docs/ENGINE_OPTIONS.md +16 -4
- package/docs/I18N.md +4 -4
- package/docs/INTEGRATION.md +1 -1
- package/docs/LIMITATIONS.md +6 -4
- package/docs/REPORT.md +1 -1
- package/docs/RULE_AUTHORING.md +53 -25
- package/docs/RULE_CATALOG.md +1878 -169
- package/docs/RULE_TAXONOMY.md +2 -2
- package/docs/TROUBLESHOOTING.md +2 -2
- package/docs/WCAG_CONFORMANCE.md +25 -9
- package/package.json +3 -7
- package/src/baseline.js +3 -3
- package/src/checks/automatic/area-alt-present.js +2 -2
- package/src/checks/automatic/aria-allowed-attr.js +68 -10
- package/src/checks/automatic/aria-allowed-role.js +2 -2
- package/src/checks/automatic/aria-braille-equivalent.js +3 -3
- package/src/checks/automatic/aria-conditional-attr.js +5 -5
- package/src/checks/automatic/aria-deprecated-role.js +1 -1
- package/src/checks/automatic/aria-hidden-body.js +2 -2
- package/src/checks/automatic/aria-hidden-focus.js +5 -5
- package/src/checks/automatic/aria-prohibited-attr.js +18 -18
- package/src/checks/automatic/aria-prohibited-children.js +130 -37
- package/src/checks/automatic/aria-required-attr.js +60 -12
- package/src/checks/automatic/aria-required-children.js +21 -14
- package/src/checks/automatic/aria-required-parent.js +61 -9
- package/src/checks/automatic/aria-role-name-present.js +36 -22
- package/src/checks/automatic/aria-valid-attr-value.js +15 -12
- package/src/checks/automatic/aria-valid-attr.js +1 -1
- package/src/checks/automatic/autocomplete-valid.js +2 -2
- package/src/checks/automatic/binary-control-name-present.js +27 -5
- package/src/checks/automatic/button-name-present.js +92 -6
- package/src/checks/automatic/combobox-name-present.js +26 -6
- package/src/checks/automatic/contrast-computable.js +32 -0
- package/src/checks/automatic/contrast-enhanced.js +21 -1
- package/src/checks/automatic/contrast-minimum.js +21 -1
- package/src/checks/automatic/css-orientation-lock.js +96 -19
- package/src/checks/automatic/definition-list-children-valid.js +7 -8
- package/src/checks/automatic/deprecated-elements-not-used.js +1 -1
- package/src/checks/automatic/dialog-name-present.js +20 -2
- package/src/checks/automatic/duplicate-id-aria.js +5 -3
- package/src/checks/automatic/duplicate-id.js +198 -0
- package/src/checks/automatic/embed-text-alternative-present.js +2 -2
- package/src/checks/automatic/form-control-programmatic-label-present.js +19 -2
- package/src/checks/automatic/form-control-single-label.js +1 -1
- package/src/checks/automatic/iframe-focusable-content.js +63 -7
- package/src/checks/automatic/iframe-name-present.js +37 -3
- package/src/checks/automatic/iframe-title-unique.js +1 -1
- package/src/checks/automatic/img-alt-present.js +12 -4
- package/src/checks/automatic/label-in-name.js +172 -18
- package/src/checks/automatic/link-in-text-block.js +10 -10
- package/src/checks/automatic/link-name-present.js +22 -1
- package/src/checks/automatic/list-children-valid.js +6 -6
- package/src/checks/automatic/listbox-name-present.js +28 -8
- package/src/checks/automatic/listitem-parent-valid.js +4 -4
- package/src/checks/automatic/menuitem-name-present.js +20 -2
- package/src/checks/automatic/meta-refresh-no-exceptions.js +25 -14
- package/src/checks/automatic/meta-refresh-timing-absent.js +14 -7
- package/src/checks/automatic/meter-name-present.js +23 -4
- package/src/checks/automatic/nested-interactive-controls-absent.js +5 -5
- package/src/checks/automatic/option-name-present.js +23 -4
- package/src/checks/automatic/page-title-present.js +21 -3
- package/src/checks/automatic/presentational-children-focusable-absent.js +330 -0
- package/src/checks/automatic/progressbar-name-present.js +23 -4
- package/src/checks/automatic/role-img-alt-present.js +64 -16
- package/src/checks/automatic/searchbox-name-present.js +28 -8
- package/src/checks/automatic/server-side-image-map-absent.js +1 -1
- package/src/checks/automatic/slider-name-present.js +27 -6
- package/src/checks/automatic/spinbutton-name-present.js +28 -8
- package/src/checks/automatic/summary-name-present.js +18 -2
- package/src/checks/automatic/svg-image-text-alternative-present.js +1 -1
- package/src/checks/automatic/svg-text-alternative-present.js +13 -10
- package/src/checks/automatic/tab-name-present.js +21 -2
- package/src/checks/automatic/table-headers-attr-valid.js +43 -8
- package/src/checks/automatic/table-th-has-data-cells.js +61 -5
- package/src/checks/automatic/target-size-minimum.js +71 -53
- package/src/checks/automatic/td-has-header.js +5 -5
- package/src/checks/automatic/textbox-name-present.js +28 -8
- package/src/checks/automatic/tooltip-name-present.js +21 -2
- package/src/checks/automatic/treeitem-name-present.js +23 -4
- package/src/checks/automatic/valid-lang.js +92 -7
- package/src/checks/automatic/video-poster-text-alternative-present.js +1 -1
- package/src/checks/manual/accesskeys-manual.js +3 -3
- package/src/checks/manual/area-alt-decorative-manual.js +7 -0
- package/src/checks/manual/area-alt-quality-manual.js +6 -0
- package/src/checks/manual/aria-checked-state-mismatch-manual.js +5 -5
- package/src/checks/manual/aria-text-manual.js +4 -4
- package/src/checks/manual/bypass-blocks-present-manual.js +44 -26
- package/src/checks/manual/canvas-text-alternative-quality-manual.js +8 -0
- package/src/checks/manual/css-focus-indicator-suppressed-manual.js +444 -0
- package/src/checks/manual/embed-text-alternative-quality-manual.js +8 -0
- package/src/checks/manual/empty-heading-manual.js +58 -11
- package/src/checks/manual/empty-table-header-manual.js +8 -8
- package/src/checks/manual/focus-order-semantics-manual.js +15 -15
- package/src/checks/manual/form-control-label-quality-manual.js +453 -0
- package/src/checks/manual/form-control-programmatic-label-quality-manual.js +2 -2
- package/src/checks/manual/heading-order-manual.js +3 -3
- package/src/checks/manual/heading-quality-manual.js +338 -0
- package/src/checks/manual/identical-links-same-purpose-manual.js +73 -12
- package/src/checks/manual/image-redundant-alt-manual.js +4 -4
- package/src/checks/manual/img-alt-decorative-manual.js +211 -52
- package/src/checks/manual/img-alt-quality-manual.js +7 -0
- package/src/checks/manual/input-image-alt-decorative-manual.js +8 -0
- package/src/checks/manual/input-image-alt-quality-manual.js +5 -0
- package/src/checks/manual/label-title-only-manual.js +4 -4
- package/src/checks/manual/landmark-banner-is-top-level-manual.js +7 -7
- package/src/checks/manual/landmark-contentinfo-is-top-level-manual.js +9 -9
- package/src/checks/manual/landmark-main-is-top-level-manual.js +6 -6
- package/src/checks/manual/landmark-no-duplicate-banner-manual.js +6 -6
- package/src/checks/manual/landmark-no-duplicate-contentinfo-manual.js +6 -6
- package/src/checks/manual/landmark-no-duplicate-main-manual.js +2 -2
- package/src/checks/manual/landmark-one-main-manual.js +6 -6
- package/src/checks/manual/landmark-unique-manual.js +9 -9
- package/src/checks/manual/link-name-quality-manual.js +161 -32
- package/src/checks/manual/media-transcript-present-manual.js +2 -3
- package/src/checks/manual/meta-viewport-large-manual.js +2 -2
- package/src/checks/manual/mouse-only-event-handlers-manual.js +9 -9
- package/src/checks/manual/no-autoplay-audio-manual.js +3 -3
- package/src/checks/manual/object-text-alternative-quality-manual.js +8 -0
- package/src/checks/manual/p-as-heading-manual.js +4 -4
- package/src/checks/manual/page-has-heading-one-manual.js +6 -6
- package/src/checks/manual/page-title-patterns-manual.js +26 -3
- package/src/checks/manual/presentation-role-conflict-manual.js +55 -25
- package/src/checks/manual/region-manual.js +19 -19
- package/src/checks/manual/scope-attr-valid-manual.js +2 -2
- package/src/checks/manual/scrollable-region-focusable-manual.js +7 -7
- package/src/checks/manual/skip-link-manual.js +5 -5
- package/src/checks/manual/svg-text-alternative-quality-manual.js +9 -0
- package/src/checks/manual/tabindex-manual.js +2 -2
- package/src/checks/manual/table-duplicate-name-manual.js +2 -2
- package/src/checks/manual/table-fake-caption-manual.js +2 -2
- package/src/checks/manual/video-caption-manual.js +3 -3
- package/src/checks/manual-review.js +17 -1
- package/src/core.js +8965 -1647
- package/src/report.js +2 -2
- package/surea11y.browser.js +3768 -611
- package/surea11y.i18n.de.js +1 -1
- package/surea11y.i18n.es.js +1 -1
- package/surea11y.i18n.fr.js +1 -1
- package/bin/surea11y-core.js +0 -20
package/surea11y.i18n.es.js
CHANGED
|
@@ -18,5 +18,5 @@
|
|
|
18
18
|
);
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
global.a11ycore.registerMessages("es", {"img_altPresent_title":"\u003cimg> debe tener un atributo alt","img_altPresent_description":"Comprueba que los elementos \u003cimg> incluyan un atributo alt para ofrecer un mecanismo de alternativa textual.","img_altPresent_summary_fail":"Falta el atributo alt en \u003cimg>.","img_altPresent_hint_fail":"Agregar un atributo alt (usar alt=\"\" solo para imágenes decorativas).","area_altPresent_title":"\u003carea> debe tener un atributo alt","area_altPresent_description":"Comprueba que los elementos \u003carea> incluyan un atributo alt para ofrecer un mecanismo de alternativa textual.","area_altPresent_summary_fail":"Falta el atributo alt en \u003carea>.","area_altPresent_hint_fail":"Agregar un atributo alt (usar alt=\"\" solo para áreas decorativas).","inputImage_altPresent_title":"\u003cinput type=\"image\"> debe tener un atributo alt","inputImage_altPresent_description":"Comprueba que los elementos \u003cinput type=\"image\"> incluyan un atributo alt para ofrecer un mecanismo de alternativa textual.","inputImage_altPresent_summary_fail":"Falta el atributo alt en \u003cinput type=\"image\">.","inputImage_altPresent_hint_fail":"Agregar un atributo alt (usar alt=\"\" solo cuando se proporcione un nombre accesible por separado).","inputImage_altPresent_summary_defaultName":"El nombre accesible es el predeterminado del navegador para un boton de imagen y no aporta informacion.","inputImage_altPresent_hint_defaultName":"Sustituyelo por un texto que describa la accion del boton, por ejemplo \"Buscar\".","inputImage_altPresent_summary_emptyAlt":"Un alt=\"\" vacio en \u003cinput type=\"image\"> deja el control sin nombre.","inputImage_altPresent_hint_emptyAlt":"Describe la accion en alt, o nombra el control con aria-label o aria-labelledby.","ariaHidden_programmaticFocus_review_title":"Revisar el foco programático en aria-hidden","ariaHidden_programmaticFocus_review_description":"Señala elementos aria-hidden considerados elegibles debido a un foco programático (por ejemplo, tabindex \u003c 0). Verificar que la gestión del foco es intencionada y la exposición a las tecnologías de asistencia.","ariaHidden_programmaticFocus_review_summary":"Revisión: un elemento aria-hidden es enfocable de forma programática.","ariaHidden_programmaticFocus_review_hint":"Comprobar que la gestión del foco es intencionada y que el elemento debe permanecer oculto para las tecnologías de asistencia.","canvas_textAltPresent_title":"\u003ccanvas> debe proporcionar una alternativa textual","canvas_textAltPresent_description":"Comprueba que los elementos \u003ccanvas> proporcionen una alternativa textual mediante contenido de reserva o un nombre accesible.","canvas_textAltPresent_summary_fail":"Falta la alternativa textual para \u003ccanvas>.","canvas_textAltPresent_hint_fail":"Proporcionar texto de reserva dentro de \u003ccanvas> o un nombre accesible (por ejemplo, aria-label/aria-labelledby).","svg_textAltPresent_title":"\u003csvg> debe proporcionar una alternativa textual","svg_textAltPresent_description":"Comprueba que los elementos \u003csvg> en línea proporcionen una alternativa textual mediante un elemento \u003ctitle> o un nombre ARIA (un elemento \u003cdesc> por sí solo no cuenta).","svg_textAltPresent_summary_fail":"Falta la alternativa textual para \u003csvg>.","svg_textAltPresent_hint_fail":"Proporcionar un elemento \u003ctitle> con texto, o un nombre ARIA (aria-label/aria-labelledby); un elemento \u003cdesc> por sí solo no proporciona un nombre accesible.","object_textAltPresent_title":"\u003cobject> debe proporcionar una alternativa textual","object_textAltPresent_description":"Comprueba que los elementos \u003cobject> proporcionen una alternativa textual mediante contenido de reserva o un nombre accesible.","object_textAltPresent_summary_fail":"Falta la alternativa textual para \u003cobject>.","object_textAltPresent_hint_fail":"Proporcionar contenido de reserva significativo dentro de \u003cobject>, agregar un nombre accesible (aria-label/aria-labelledby), o usar un atributo title como alternativa de último recurso.","embed_textAltPresent_title":"\u003cembed> debe proporcionar una alternativa textual","embed_textAltPresent_description":"Comprueba que los elementos \u003cembed> proporcionen una alternativa textual mediante un nombre accesible.","embed_textAltPresent_summary_fail":"Falta la alternativa textual para \u003cembed>.","embed_textAltPresent_hint_fail":"Agregar un nombre accesible a \u003cembed> (se prefiere aria-label/aria-labelledby, o un atributo title como alternativa de último recurso).","img_altQuality_title":"El texto alt de \u003cimg> debe ser apropiado (revisión manual)","img_altQuality_description":"Señala elementos \u003cimg> con texto alt no vacío para su revisión manual en cuanto a idoneidad.","img_altQuality_summary_cantTell":"Revisar el texto alt de \u003cimg> en cuanto a exactitud e idoneidad.","img_altQuality_hint_cantTell":"Asegurarse de que el texto alt transmita el propósito o la información de la imagen en su contexto (que no sea redundante ni parezca un nombre de archivo).","img_altDecorative_title":"\u003cimg> con alt=\"\" debe ser decorativa (revisión manual)","img_altDecorative_description":"Señala elementos \u003cimg> con alt vacío para su revisión manual de que son puramente decorativos.","img_altDecorative_summary_cantTell":"Revisar si \u003cimg> es decorativa (alt=\"\").","img_altDecorative_hint_cantTell":"Confirmar que la imagen es puramente decorativa. Si transmite información o función, proporcionar un texto alt significativo.","area_altQuality_title":"El texto alt de \u003carea> debe ser apropiado (revisión manual)","area_altQuality_description":"Señala elementos \u003carea> con texto alt no vacío para su revisión manual en cuanto a idoneidad.","area_altQuality_summary_cantTell":"Revisar el texto alt de \u003carea> en cuanto a exactitud e idoneidad.","area_altQuality_hint_cantTell":"Asegurarse de que el texto alt identifique el destino o la acción del área del mapa de imagen en su contexto.","area_altDecorative_title":"\u003carea> con alt=\"\" debe ser decorativa (revisión manual)","area_altDecorative_description":"Señala elementos \u003carea> con alt vacío para su revisión manual de que son decorativos o no informativos.","area_altDecorative_summary_cantTell":"Revisar si \u003carea> es decorativa (alt=\"\").","area_altDecorative_hint_cantTell":"Confirmar que el área no transmite información ni función. Si es interactiva o significativa, proporcionar un texto alt significativo.","inputImage_altQuality_title":"El texto alt de \u003cinput type=\"image\"> debe ser apropiado (revisión manual)","inputImage_altQuality_description":"Señala elementos \u003cinput type=\"image\"> con texto alt no vacío para su revisión manual en cuanto a idoneidad.","inputImage_altQuality_summary_cantTell":"Revisar el texto alt de \u003cinput type=\"image\"> en cuanto a exactitud e idoneidad.","inputImage_altQuality_hint_cantTell":"Asegurarse de que el texto alt describa la acción del control (por ejemplo, \"Buscar\", \"Enviar pedido\") en su contexto.","inputImage_altDecorative_title":"\u003cinput type=\"image\"> con alt=\"\" debe ser apropiado (revisión manual)","inputImage_altDecorative_description":"Señala elementos \u003cinput type=\"image\"> con alt vacío para su revisión manual (normalmente no es apropiado para controles funcionales).","inputImage_altDecorative_summary_cantTell":"Revisar \u003cinput type=\"image\"> con alt=\"\".","inputImage_altDecorative_hint_cantTell":"Este control suele ser funcional. Confirmar que tiene un nombre accesible equivalente en otro lugar, o proporcionar un texto alt significativo.","canvas_textAltQuality_title":"La alternativa textual de \u003ccanvas> debe ser apropiada (revisión manual)","canvas_textAltQuality_description":"Señala elementos \u003ccanvas> con una alternativa textual detectada para su revisión manual en cuanto a equivalencia e idoneidad.","canvas_textAltQuality_summary_cantTell":"Revisar la alternativa textual de \u003ccanvas> en cuanto a equivalencia e idoneidad.","canvas_textAltQuality_hint_cantTell":"Confirmar que el texto de reserva o el nombre accesible transmite la misma información o función que el contenido del canvas.","svg_textAltQuality_title":"La alternativa textual de \u003csvg> debe ser apropiada (revisión manual)","svg_textAltQuality_description":"Señala gráficos \u003csvg> aplicables con una alternativa textual detectada para su revisión manual en cuanto a idoneidad.","svg_textAltQuality_summary_cantTell":"Revisar la alternativa textual de \u003csvg> en cuanto a exactitud e idoneidad.","svg_textAltQuality_hint_cantTell":"Confirmar que el \u003ctitle>/\u003cdesc> o el nombre ARIA transmite el significado o propósito del gráfico en su contexto.","object_textAltQuality_title":"La alternativa textual de \u003cobject> debe ser apropiada (revisión manual)","object_textAltQuality_description":"Señala elementos \u003cobject> con contenido de reserva o nombre detectados para su revisión manual en cuanto a equivalencia e idoneidad.","object_textAltQuality_summary_cantTell":"Revisar la alternativa textual de \u003cobject> en cuanto a equivalencia e idoneidad.","object_textAltQuality_hint_cantTell":"Confirmar que el contenido de reserva o el nombre ARIA proporciona una alternativa equivalente para el contenido incrustado.","embed_textAltQuality_title":"La alternativa textual de \u003cembed> debe ser apropiada (revisión manual)","embed_textAltQuality_description":"Señala elementos \u003cembed> con un nombre detectado para su revisión manual en cuanto a idoneidad.","embed_textAltQuality_summary_cantTell":"Revisar la alternativa textual de \u003cembed> en cuanto a exactitud e idoneidad.","embed_textAltQuality_hint_cantTell":"Confirmar que el nombre ARIA o el title identifica con precisión el contenido incrustado en su contexto.","videoPoster_textAltPresent_title":"El póster de \u003cvideo> debe tener una alternativa textual","videoPoster_textAltPresent_description":"Comprueba que los elementos \u003cvideo> con una imagen de póster proporcionen una alternativa textual (nombre accesible).","videoPoster_textAltPresent_summary_fail":"Falta la alternativa textual para el póster de \u003cvideo>.","videoPoster_textAltPresent_hint_fail":"Proporcionar un nombre accesible para la imagen del póster (se prefiere aria-label/aria-labelledby, o un atributo title como alternativa de reserva).","svgImage_textAltPresent_title":"El elemento \u003cimage> de SVG debe tener una alternativa textual","svgImage_textAltPresent_description":"Comprueba que los elementos \u003cimage> de SVG proporcionen una alternativa textual mediante \u003ctitle>/\u003cdesc> o un nombre accesible ARIA.","svgImage_textAltPresent_summary_fail":"Falta la alternativa textual en el \u003cimage> de SVG.","svgImage_textAltPresent_hint_fail":"Agregar un \u003ctitle> (y opcionalmente un \u003cdesc>) dentro de \u003cimage>, o proporcionar aria-label/aria-labelledby.","formControl_programmaticLabelPresent_title":"Los controles de formulario deben tener una etiqueta programática","formControl_programmaticLabelPresent_description":"Comprueba que los controles de formulario tengan una etiqueta programática mediante \u003clabel>, aria-label o aria-labelledby.","formControl_programmaticLabelPresent_summary_fail":"Al control de formulario le falta una etiqueta programática.","formControl_programmaticLabelPresent_hint_fail":"Proporcionar una asociación \u003clabel>, aria-label o aria-labelledby (placeholder/title no cuentan como etiquetas).","formControlAccessibleName_description":"Falla cuando un control de formulario aplicable no tiene nombre accesible (por ejemplo, label, aria-label, aria-labelledby).","formControlAccessibleName_hint_fail":"Proporcionar un nombre accesible mediante un \u003clabel>, aria-label o aria-labelledby.","formControlAccessibleName_summary_fail":"El control de formulario no tiene nombre accesible.","formControlAccessibleName_title":"Los controles de formulario deben tener un nombre accesible","linksTargetBlankNoopener_description":"Garantiza que los enlaces con target=\"_blank\" mitiguen los riesgos de reverse tabnabbing.","linksTargetBlankNoopener_hint_cantTell":"Consultar las indicaciones para esta regla.","linksTargetBlankNoopener_summary_cantTell":"Los enlaces que se abren en una nueva pestaña deben usar rel=\"noopener\"","linksTargetBlankNoopener_title":"Los enlaces que se abren en una nueva pestaña deben usar rel=\"noopener\"","manualReview_description":"Señala que se requiere una revisión manual de la navegación por teclado y el orden del foco.","manualReview_hint_cantTell":"Consultar las indicaciones para esta regla.","manualReview_summary_cantTell":"Revisión manual: navegación por teclado y orden del foco","manualReview_title":"Revisión manual: navegación por teclado y orden del foco","rules.img-alt-suspicious.meta.title":"El texto alt sospechoso requiere verificación","rules.img-alt-suspicious.meta.description":"Identifica imágenes cuyo texto alt coincide con patrones sospechosos comunes (como nombres de archivo, URL, marcadores de posición o términos genéricos) y requiere verificación manual.","rules.img-alt-suspicious.occurrence.cantTell.summary":"El texto alt de la imagen parece sospechoso (\"{{alt}}\" parece {{pattern}}) y requiere verificación.","rules.img-alt-suspicious.occurrence.cantTell.hint":"Revisar el texto alt. Evitar nombres de archivo, URL, marcadores de posición o términos genéricos, y asegurarse de que la alternativa textual describa el propósito o la función de la imagen en su contexto.","formControl_programmaticLabelQuality_title":"Los controles de formulario no deben depender de placeholder o title como etiqueta principal","formControl_programmaticLabelQuality_description":"Señala controles de formulario cuyo nombre accesible calculado depende de placeholder o title como método de etiquetado principal. Se prefiere \u003clabel> o aria-labelledby.","formControl_programmaticLabelQuality_summary_cantTell":"La etiqueta principal del control de formulario proviene de {{method}}.","formControl_programmaticLabelQuality_hint_cantTell":"Preferir un \u003clabel> persistente o aria-labelledby. Evitar depender de placeholder/title como etiqueta principal.","html_lang_attr_title":"El idioma de la página está declarado","html_lang_attr_description":"Comprueba que el idioma predeterminado de la página esté declarado de forma programática.","html_lang_attr_missing_absent":"El idioma predeterminado de la página no está declarado.","html_lang_attr_hint_missing_absent":"Agregar un atributo lang al elemento \u003chtml> (por ejemplo: \u003chtml lang=\"en\">).","html_lang_attr_missing_empty":"El idioma predeterminado de la página está declarado pero vacío.","html_lang_attr_hint_missing_empty":"Establecer un valor de idioma válido en el atributo lang del elemento \u003chtml> (por ejemplo: \u003chtml lang=\"en\">).","html_lang_attr_invalid":"El idioma predeterminado de la página está declarado, pero el valor \"{{lang}}\" no es una etiqueta de idioma válida.","html_lang_attr_hint_invalid":"Usar una etiqueta de idioma BCP 47 válida en \u003chtml lang=\"…\"> (por ejemplo: \"en\", \"fr\", \"en-US\").","mediaTranscriptPresent_title":"Medios basados en tiempo: evidencia de transcripción o alternativa textual","mediaTranscriptPresent_description":"Encuentra elementos de audio y video en los que no hay evidencia sólida de una transcripción u otra alternativa textual en el contenido de la página. Esta regla es conservadora e informa revisión manual cuando falta evidencia o no se puede verificar.","mediaTranscriptPresent_summary_cantTell_missing":"No se demuestra claramente en el contenido de la página la presencia de una transcripción u otra alternativa textual para este \u003c{{element}}>.","mediaTranscriptPresent_hint_cantTell_missing":"Proporcionar una transcripción claramente identificada u otra alternativa textual para medios de solo audio o solo video pregrabados, por ejemplo una sección o enlace visible de \"Transcripción\".","mediaTranscriptPresent_summary_cantTell_unverified":"Puede haber disponible una transcripción u otra alternativa textual para este medio basado en tiempo, pero no se pudo verificar a partir del contenido de la página.","mediaTranscriptPresent_hint_cantTell_unverified":"Asegurarse de que una transcripción claramente identificada u otra alternativa textual esté disponible y asociada visible o programáticamente con el medio en la página.","pageTitlePresent_title":"La página tiene un título no vacío","pageTitlePresent_description":"Comprueba que la página incluya un elemento \u003ctitle> no vacío que la identifique.","pageTitlePresent_summary_fail":"La página no tiene un título no vacío.","pageTitlePresent_hint_fail":"Agregar un elemento \u003ctitle> con texto que describa el tema o propósito de la página.","pageTitlePatterns_title":"Patrones de título de página que pueden ser poco descriptivos","pageTitlePatterns_description":"Identifica patrones de título de página que pueden indicar baja descriptividad, como títulos genéricos, duplicados o excesivamente basados en plantillas. Esta regla ofrece señales de revisión y no falla automáticamente.","pageTitlePatterns_summary_cantTell":"Es posible que el título de la página no sea lo bastante descriptivo para identificar su tema o propósito.","pageTitlePresent_summary_fail_missing":"A la página le falta un elemento \u003ctitle>.","pageTitlePresent_summary_fail_empty":"La página tiene un \u003ctitle> vacío.","pageTitlePatterns_summary_cantTell_duplicateAcrossPages":"Varias páginas comparten el mismo título, lo que puede dificultar distinguirlas ({{duplicateGroups}} grupos duplicados en {{pagesAnalyzed}} páginas). Ejemplo: \"{{exampleTitle}}\".","pageTitlePatterns_summary_cantTell_templatedAcrossPages":"Muchos títulos de página parecen muy basados en plantillas, lo que puede reducir su capacidad de distinguir páginas ({{pagesAnalyzed}} páginas).","pageTitlePatterns_summary_cantTell_generic":"El título de la página es genérico y puede no identificar su tema o propósito.","pageTitlePatterns_summary_cantTell_veryShort":"El título de la página es muy corto y puede no identificar su tema o propósito.","pageTitlePatterns_summary_cantTell_templateLike":"El título de la página parece basado en una plantilla y puede no identificar su tema o propósito.","pageTitlePatterns_hint_cantTell":"Revisar el título de la página y asegurarse de que identifique claramente su tema o propósito y ayude a distinguirla de otras.","contrastComputable_title":"El contraste de color es computable para el texto renderizado","contrastComputable_description":"Determina si hay suficiente información disponible para calcular el contraste de color WCAG del texto visible (por ejemplo, sin degradados/imágenes/modos de fusión que hagan indeterminado el fondo).","contrastComputable_pass_allComputable":"El contraste es computable para todo el texto elegible ({{eligibleTextCount}} nodo(s) de texto).","contrastComputable_cantTell_generic":"Es posible que el contraste no sea computable ({{reasonCode}}).","contrastComputable_cantTell_bgImageOrGradient":"El contraste no es computable porque el fondo usa una imagen o un degradado ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_bgImage":"El contraste no es computable porque el fondo usa una imagen ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_bgGradient":"El contraste no es computable porque el fondo usa un degradado ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_bgImageAndGradient":"El contraste no es computable porque el fondo usa una imagen y un degradado ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_mixBlendMode":"El contraste no es computable porque se usa mix-blend-mode ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_filter":"El contraste no es computable porque se usa filter/backdrop-filter ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_rootNotOpaque":"El contraste no es computable porque el fondo efectivo no es completamente opaco en la raíz (alpha={{backgroundAlpha}}).","contrastComputable_cantTell_foregroundUnparsable":"El contraste no es computable porque no se pudo analizar el color de primer plano calculado.","contrastComputable_cantTell_engineFailure":"No se pudo determinar la computabilidad del contraste debido a un error interno del motor ({{reasonCode}}).","contrastComputable_cantTell_backdropFilter":"El contraste no es computable porque se usa backdrop-filter ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_filterOrBackdropFilter":"El contraste no es computable porque se usa filter ({{blockerProperty}}={{blockerValue}}).","contrastMinimum_title":"El texto cumple el contraste de color mínimo (AA)","contrastMinimum_description":"Comprueba que el texto visible tenga una relación de contraste de al menos 4.5:1 (normal) o 3.0:1 (grande), cuando el contraste es computable a partir de CSS.","contrastMinimum_fail_belowThreshold":"El elemento tiene un contraste de color insuficiente de {{ratio}}:1 (primer plano: {{foregroundHex}}, fondo: {{backgroundHex}}, tamaño de fuente: {{fontSizePx}}px, grosor de fuente: {{fontWeightLabel}}). Se esperaba una relación de contraste de {{threshold}}:1 ({{#isLargeText}}texto grande{{/isLargeText}}{{^isLargeText}}texto normal{{/isLargeText}}).","contrastMinimum_pass_allAboveThreshold":"Todo el texto computable cumple el contraste mínimo (AA). Nodos de texto elegibles: {{eligibleTextCount}}. Computables: {{computableTextCount}}.","contrastMinimum_notApplicable_noComputableText":"Ningún texto elegible tuvo contraste computable (nodos de texto elegibles: {{eligibleTextCount}}). Consultar la regla de computabilidad de contraste para más información.","contrastMinimum_cantTell_engineFailure":"No se pudo determinar el contraste mínimo (AA) debido a un error interno del motor ({{reasonCode}}).","contrastEnhanced_title":"El texto cumple el contraste de color mejorado (AAA)","contrastEnhanced_description":"Comprueba que el texto visible tenga una relación de contraste de al menos 7.0:1 (normal) o 4.5:1 (grande), cuando el contraste es computable a partir de CSS.","contrastEnhanced_fail_belowThreshold":"El elemento tiene un contraste de color insuficiente (AAA) de {{ratio}}:1 (primer plano: {{foregroundHex}}, fondo: {{backgroundHex}}, tamaño de fuente: {{fontSizePx}}px, grosor de fuente: {{fontWeightLabel}}). Se esperaba una relación de contraste de {{threshold}}:1 ({{#isLargeText}}texto grande{{/isLargeText}}{{^isLargeText}}texto normal{{/isLargeText}}).","contrastEnhanced_pass_allAboveThreshold":"Todo el texto computable cumple el contraste mejorado (AAA). Nodos de texto elegibles: {{eligibleTextCount}}. Computables: {{computableTextCount}}.","contrastEnhanced_notApplicable_noComputableText":"Ningún texto elegible tuvo contraste computable (nodos de texto elegibles: {{eligibleTextCount}}). Consultar la regla de computabilidad de contraste para más información.","contrastEnhanced_cantTell_engineFailure":"No se pudo determinar el contraste mejorado (AAA) debido a un error interno del motor ({{reasonCode}}).","dom_textContrastMinimum_title":"El texto debe tener contraste suficiente (mínimo)","dom_textContrastMinimum_description":"Comprueba el contraste del texto visible contra su fondo calculado según el criterio de éxito 1.4.3 (AA) de WCAG 2.2, usando los estilos renderizados (tamaño/grosor de fuente) para determinar la relación requerida.","dom_textContrastMinimum_summary_fail":"Contraste de texto insuficiente: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} sobre fondo {{bgColor}}. Fuente {{fontSizePx}}px, grosor {{fontWeight}}{{#isBold}}, negrita{{/isBold}}{{#isLargeText}} (texto grande){{/isLargeText}}.","dom_textContrastMinimum_hint_fail":"Ajustar el color de primer plano o de fondo para que la relación de contraste sea de al menos {{requiredRatio}}:1 para este tamaño/grosor de texto.","dom_textContrastMinimum_summary_pass":"Contraste de texto correcto: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} sobre fondo {{bgColor}}. Fuente {{fontSizePx}}px, grosor {{fontWeight}}{{#isBold}}, negrita{{/isBold}}{{#isLargeText}} (texto grande){{/isLargeText}}.","dom_textContrastMinimum_summary_cantTell":"No se pudo calcular de forma fiable el contraste del texto porque el fondo efectivo no se puede resolver de forma determinista (por ejemplo, imagen, degradado, video, canvas, transparencia compleja o fusión de capas).","dom_textContrastMinimum_hint_cantTell":"Verificar manualmente el contraste donde el texto se superpone a imágenes/degradados/transparencias; asegurarse de que cumpla {{requiredRatio}}:1 para el tamaño/grosor de texto calculado.","dom_textContrastEnhanced_title":"El texto debe tener contraste suficiente (mejorado)","dom_textContrastEnhanced_description":"Comprueba el contraste del texto visible contra su fondo calculado según el criterio de éxito 1.4.6 (AAA) de WCAG 2.2, usando los estilos renderizados (tamaño/grosor de fuente) para determinar la relación requerida.","dom_textContrastEnhanced_summary_fail":"Contraste de texto mejorado insuficiente: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} sobre fondo {{bgColor}}. Fuente {{fontSizePx}}px, grosor {{fontWeight}}{{#isBold}}, negrita{{/isBold}}{{#isLargeText}} (texto grande){{/isLargeText}}.","dom_textContrastEnhanced_hint_fail":"Ajustar el color de primer plano o de fondo para que la relación de contraste sea de al menos {{requiredRatio}}:1 para el contraste mejorado (AAA).","dom_textContrastEnhanced_summary_pass":"Contraste de texto mejorado correcto: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} sobre fondo {{bgColor}}. Fuente {{fontSizePx}}px, grosor {{fontWeight}}{{#isBold}}, negrita{{/isBold}}{{#isLargeText}} (texto grande){{/isLargeText}}.","dom_textContrastEnhanced_summary_cantTell":"No se pudo calcular de forma fiable el contraste de texto mejorado porque el fondo efectivo no se puede resolver de forma determinista (por ejemplo, imagen, degradado, video, canvas, transparencia compleja o fusión de capas).","dom_textContrastEnhanced_hint_cantTell":"Verificar manualmente el contraste mejorado (AAA) donde el texto se superpone a imágenes/degradados/transparencias; asegurarse de que cumpla {{requiredRatio}}:1 para el tamaño/grosor de texto calculado.","dom_nonTextContrast_title":"Los componentes de interfaz y los gráficos deben tener contraste suficiente","dom_nonTextContrast_description":"Comprueba el contraste de información visual no textual (límites y estados de componentes de interfaz, y objetos gráficos significativos) según el criterio de éxito 1.4.11 (AA) de WCAG 2.2.","dom_nonTextContrast_summary_fail":"Contraste no textual insuficiente: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} contra fondo {{bgColor}}. Componente: {{componentKind}}{{#componentState}} (estado: {{componentState}}){{/componentState}}.","dom_nonTextContrast_hint_fail":"Ajustar los colores del componente o gráfico para que la relación de contraste sea de al menos {{requiredRatio}}:1 para el límite perceptible o la información visual esencial.","dom_nonTextContrast_summary_pass":"Contraste no textual correcto: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} contra fondo {{bgColor}}. Componente: {{componentKind}}{{#componentState}} (estado: {{componentState}}){{/componentState}}.","dom_nonTextContrast_summary_cantTell":"No se pudo calcular de forma fiable el contraste no textual porque el fondo efectivo o los píxeles pintados no se pueden resolver de forma determinista (por ejemplo, imagen/degradado/video/canvas, transparencia compleja o fusión de capas).","dom_nonTextContrast_hint_cantTell":"Verificar manualmente el contraste del componente o gráfico contra los colores adyacentes; asegurarse de que cumpla {{requiredRatio}}:1 para la información visual no textual esencial.","contrastEnhanced_pass_allTextMeetsThreshold":"Todo el texto computable cumple el contraste mejorado (AAA).","contrastMinimum_pass_allTextMeetsThreshold":"Todo el texto computable cumple el contraste mínimo (AA).","contrastComputable_cantTell_notComputable":"No se pudo calcular el contraste para este texto ({{reasonCode}}).","roleImg_textAlternativePresent_title":"Los elementos con role=\"img\" deben tener una alternativa textual accesible","roleImg_textAlternativePresent_description":"Comprueba que los elementos con role=\"img\" proporcionen una alternativa textual accesible mediante aria-label, aria-labelledby o un atributo title.","roleImg_textAlternativePresent_summary_fail":"El elemento con role=\"img\" no tiene una alternativa textual accesible.","roleImg_textAlternativePresent_hint_fail":"Proporcionar una alternativa textual mediante aria-label, o aria-labelledby que haga referencia a texto no vacío.","targetSizeMinimum_title":"Los objetivos de puntero deben tener al menos 24x24px de tamaño, o dejar suficiente distancia respecto a otros objetivos","targetSizeMinimum_description":"Comprueba que los objetivos operables por puntero tengan una zona de contacto efectiva de al menos 24 por 24 píxeles CSS, o cumplan una excepción permitida (por ejemplo, espaciado suficiente).","targetSizeMinimum_summary_fail":"Uno o más objetivos de puntero son más pequeños que 24×24 px CSS y están demasiado cerca de otro objetivo.","targetSizeMinimum_hint_fail":"Aumentar el tamaño del objetivo a al menos 24×24 px CSS o agregar suficiente espaciado respecto a los objetivos vecinos.","targetSizeMinimum_summary_cantTell_ambiguousSpacing":"El objetivo puede ser demasiado pequeño y estar demasiado cerca de otro objetivo, pero la superposición está cerca del umbral de detección y no se pudo medir con confianza.","targetSizeMinimum_hint_cantTell_ambiguousSpacing":"Verificar manualmente el espaciado efectivo entre este objetivo y su vecino; aumentar el tamaño del objetivo o el espaciado si la superposición es real.","targetSizeMinimum_summary_cantTell_plausiblyEssential":"El objetivo es demasiado pequeño y está demasiado cerca de otro objetivo, pero puede estar exento por formar parte de un gráfico esencial o una región de mapa de imagen.","targetSizeMinimum_hint_cantTell_plausiblyEssential":"Verificar si el tamaño de este objetivo es realmente esencial para su función (por ejemplo, parte de un SVG/canvas/mapa de imagen); si no lo es, aumentar el tamaño del objetivo o el espaciado.","targetSizeMinimum_summary_cantTell_inlineLinkRun":"El objetivo es más pequeño que 24×24 px CSS y está cerca de otro enlace en línea dentro del mismo texto, donde puede aplicarse la excepción de contenido en línea.","targetSizeMinimum_hint_cantTell_inlineLinkRun":"Confirmar si estos enlaces forman parte de un texto en línea (que está exento); de lo contrario, aumentar el tamaño del objetivo a al menos 24×24 px CSS o agregar espaciado.","targetSizeMinimum_notApplicable_noTargets":"Ningún objetivo operable por puntero era elegible para la evaluación.","targetSizeMinimum_pass_allOk":"Todos los objetivos de puntero elegibles cumplen el tamaño mínimo o una excepción permitida.","ariaHidden_focus_title":"Los elementos ocultos con ARIA no deben ser enfocables","ariaHidden_focus_description":"Comprueba que los elementos con aria-hidden=\"true\" no sean enfocables ni contengan descendientes enfocables.","ariaHidden_focus_summary_fail_desc":"El elemento aria-hidden {{element}} contiene {{focusableCount}} elemento(s) enfocable(s).","ariaHidden_focus_summary_fail_self":"El elemento aria-hidden {{element}} es enfocable ({{focusableCount}} elemento(s) enfocable(s)).","ariaHidden_focus_summary_fail_self_and_desc":"El elemento aria-hidden {{element}} es enfocable y contiene {{descendantFocusableCount}} descendiente(s) enfocable(s) ({{focusableCount}} elemento(s) enfocable(s) en total).","ariaHidden_focus_hint_fail":"Eliminar la capacidad de enfoque de los descendientes o eliminar aria-hidden; asegurarse de que el orden de foco y el árbol de accesibilidad permanezcan alineados.","ariaHidden_focus_summary_cantTell_redirect":"El elemento aria-hidden {{element}} recibió el foco, pero el foco se movió de inmediato a otro elemento. Verificar el comportamiento de centinela/trampa de foco.","ariaHidden_focus_hint_cantTell_redirect":"Verificar que se trate de un traspaso intencionado de centinela/trampa de foco y que los usuarios de teclado nunca queden en objetivos de foco ocultos.","ariaHidden_focus_summary_cantTell_modal":"El elemento aria-hidden {{element}} contiene {{focusableCount}} elemento(s) enfocable(s) mientras hay un diálogo modal abierto. Si el modal mantiene atrapado el foco del teclado, pueden ser inalcanzables; verificar que el foco no pueda posarse en ellos.","ariaHidden_focus_hint_cantTell_modal":"Parece que hay un diálogo modal abierto. Es preferible volver inerte el fondo (o usar un \u003cdialog> nativo abierto con showModal()) para que salga del orden de tabulación, y luego verificar que el foco del teclado permanezca dentro del diálogo.","cssHidden_focus_title":"Los elementos enfocables no deben estar ocultos visualmente","cssHidden_focus_description":"Comprueba que los elementos enfocables por teclado no estén ocultos visualmente mediante técnicas CSS que puedan dejarlos en el orden de tabulación.","cssHidden_focus_summary_cantTell":"El elemento enfocable {{element}} está oculto visualmente ({{visibilityHints}}).","cssHidden_focus_hint_cantTell":"Hacer visible el elemento cuando pueda recibir foco de teclado, o eliminarlo del orden de tabulación hasta que sea visible.","linkNamePresent_title":"Los enlaces tienen un nombre accesible","linkNamePresent_description":"Comprueba que los enlaces expongan un nombre accesible no vacío.","linkNamePresent_summary_fail":"Este enlace no tiene nombre accesible.","linkNamePresent_hint_fail":"Proporcionar texto de enlace o un mecanismo de nombre accesible (por ejemplo, aria-label) para que las tecnologías de asistencia puedan identificar el enlace.","buttonNamePresent_title":"Los botones tienen un nombre accesible","buttonNamePresent_description":"Comprueba que los botones expongan un nombre accesible no vacío.","buttonNamePresent_summary_fail":"Este botón no tiene nombre accesible.","buttonNamePresent_hint_fail":"Proporcionar texto de botón visible o un mecanismo de nombre accesible programático (por ejemplo, aria-label) para que las tecnologías de asistencia puedan identificar el botón.","binaryControlNamePresent_title":"Los controles binarios tienen un nombre accesible","binaryControlNamePresent_description":"Comprueba que los controles de tipo casilla de verificación, botón de opción e interruptor expongan un nombre accesible no vacío.","binaryControlNamePresent_summary_fail":"Este control no tiene nombre accesible.","binaryControlNamePresent_hint_fail":"Proporcionar una etiqueta, aria-label, aria-labelledby, u otro mecanismo de nombre accesible para que las tecnologías de asistencia puedan identificar el control.","comboboxNamePresent_title":"Los cuadros combinados tienen un nombre accesible","comboboxNamePresent_description":"Comprueba que los elementos con role=\"combobox\" expongan un nombre accesible no vacío.","comboboxNamePresent_summary_fail":"Este cuadro combinado no tiene nombre accesible.","comboboxNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este cuadro combinado.","dialogNamePresent_title":"Los diálogos tienen un nombre accesible","dialogNamePresent_description":"Comprueba que los elementos con role=\"dialog\" o role=\"alertdialog\" expongan un nombre accesible no vacío.","dialogNamePresent_summary_fail":"Este diálogo no tiene nombre accesible.","dialogNamePresent_hint_fail":"Proporcionar aria-labelledby (preferido) o aria-label para que las tecnologías de asistencia puedan anunciar el diálogo.","menuitemNamePresent_title":"Los elementos de menú tienen un nombre accesible","menuitemNamePresent_description":"Comprueba que los elementos de menú (role=\"menuitem*\", incluidas las variantes casilla/opción) expongan un nombre accesible no vacío.","menuitemNamePresent_summary_fail":"Este elemento de menú no tiene nombre accesible.","menuitemNamePresent_hint_fail":"Proporcionar texto visible que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","tabNamePresent_title":"Las pestañas tienen un nombre accesible","tabNamePresent_description":"Comprueba que los elementos con role=\"tab\" expongan un nombre accesible no vacío.","tabNamePresent_summary_fail":"Esta pestaña no tiene nombre accesible.","tabNamePresent_hint_fail":"Proporcionar texto de pestaña que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","sliderNamePresent_title":"Los controles deslizantes tienen un nombre accesible","sliderNamePresent_description":"Comprueba que los controles deslizantes (input[type=\"range\"] y role=\"slider\") expongan un nombre accesible no vacío.","sliderNamePresent_summary_fail":"Este control deslizante no tiene nombre accesible.","sliderNamePresent_hint_fail":"Proporcionar una etiqueta, aria-label o aria-labelledby para que las tecnologías de asistencia puedan identificar el control deslizante.","textboxNamePresent_title":"Los cuadros de texto tienen un nombre accesible","textboxNamePresent_description":"Comprueba que los elementos con role=\"textbox\" expongan un nombre accesible no vacío.","textboxNamePresent_summary_fail":"Este cuadro de texto no tiene nombre accesible.","textboxNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este cuadro de texto.","searchboxNamePresent_title":"Los cuadros de búsqueda tienen un nombre accesible","searchboxNamePresent_description":"Comprueba que los elementos con role=\"searchbox\" expongan un nombre accesible no vacío.","searchboxNamePresent_summary_fail":"Este cuadro de búsqueda no tiene nombre accesible.","searchboxNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este cuadro de búsqueda.","spinbuttonNamePresent_title":"Los controles numéricos tienen un nombre accesible","spinbuttonNamePresent_description":"Comprueba que los elementos con role=\"spinbutton\" expongan un nombre accesible no vacío.","spinbuttonNamePresent_summary_fail":"Este control numérico no tiene nombre accesible.","spinbuttonNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este control numérico.","listboxNamePresent_title":"Los cuadros de lista tienen un nombre accesible","listboxNamePresent_description":"Comprueba que los elementos con role=\"listbox\" expongan un nombre accesible no vacío.","listboxNamePresent_summary_fail":"Este cuadro de lista no tiene nombre accesible.","listboxNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este cuadro de lista.","optionNamePresent_title":"Las opciones tienen un nombre accesible","optionNamePresent_description":"Comprueba que los elementos con role=\"option\" expongan un nombre accesible no vacío.","optionNamePresent_summary_fail":"Esta opción no tiene nombre accesible.","optionNamePresent_hint_fail":"Proporcionar texto de opción que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","treeitemNamePresent_title":"Los elementos de árbol tienen un nombre accesible","treeitemNamePresent_description":"Comprueba que los elementos con role=\"treeitem\" expongan un nombre accesible no vacío.","treeitemNamePresent_summary_fail":"Este elemento de árbol no tiene nombre accesible.","treeitemNamePresent_hint_fail":"Proporcionar texto de elemento de árbol que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","ariaRoleNamePresent_title":"Los roles ARIA de widget/contenedor tienen un nombre accesible","ariaRoleNamePresent_description":"Comprueba que determinados roles ARIA de widget/contenedor expongan un nombre accesible no vacío.","ariaRoleNamePresent_summary_fail":"Este elemento no tiene nombre accesible.","ariaRoleNamePresent_hint_fail":"Proporcionar aria-label o aria-labelledby (preferido), o un atributo title no vacío.","composite_rollup_summary":"Resultado de regla compuesta: {{reasonCode}} ({{testCount}} comprobaciones)","catalog.rules.wcag_111_non_text_content.title":"Contenido no textual: alternativas textuales","catalog.rules.wcag_111_non_text_content.description":"Agrupación de comprobaciones que garantizan que el contenido no textual tenga una alternativa textual apropiada.","catalog.rules.wcag_121_prerecorded_transcript.title":"Solo audio y solo video (pregrabado): transcripción","catalog.rules.wcag_121_prerecorded_transcript.description":"Agrupación de comprobaciones sobre la disponibilidad de transcripción para medios pregrabados de solo audio o solo video.","catalog.rules.wcag_143_contrast_minimum.title":"Contraste: mínimo","catalog.rules.wcag_143_contrast_minimum.description":"Agrupación de comprobaciones del contraste mínimo del texto.","catalog.rules.wcag_146_contrast_enhanced.title":"Contraste: mejorado","catalog.rules.wcag_146_contrast_enhanced.description":"Agrupación de comprobaciones del contraste de texto mejorado.","catalog.rules.wcag_242_page_titled.title":"Página titulada","catalog.rules.wcag_242_page_titled.description":"Agrupación de comprobaciones que garantizan que los documentos tengan un título de página significativo.","catalog.rules.wcag_247_focus_visible.title":"Foco visible","catalog.rules.wcag_247_focus_visible.description":"Agrupación de comprobaciones que garantizan que el foco de teclado no esté oculto y siga siendo perceptible.","catalog.rules.wcag_258_target_size_minimum.title":"Tamaño del objetivo: mínimo","catalog.rules.wcag_258_target_size_minimum.description":"Agrupación de comprobaciones que garantizan que los objetivos de puntero cumplan los requisitos de tamaño mínimo.","catalog.rules.wcag_311_language_of_page.title":"Idioma de la página","catalog.rules.wcag_311_language_of_page.description":"Agrupación de comprobaciones que garantizan que el idioma de la página esté especificado.","catalog.rules.wcag_412_name.title":"Nombre, rol, valor: nombre accesible","catalog.rules.wcag_412_name.description":"Agrupación de comprobaciones que garantizan que los elementos interactivos comunes expongan un nombre accesible no vacío.","labelInName_title":"Etiqueta en el nombre: el nombre accesible contiene el texto visible","labelInName_description":"Comprueba que, cuando un control tiene una etiqueta de texto visible, el nombre accesible contenga ese texto de etiqueta visible (WCAG 2.5.3).","labelInName_summary_fail":"{{element}}: la etiqueta visible \"{{visibleLabel}}\" (de {{labelSource}}) no está incluida en el nombre accesible (de {{nameMechanism}}).","labelInName_hint_fail":"Actualizar aria-label/aria-labelledby (o el texto de la etiqueta visible) para que el nombre accesible incluya el texto de la etiqueta visible.","labelInName_summary_cantTell":"{{element}}: la etiqueta visible \"{{visibleLabel}}\" (de {{labelSource}}) se diferencia del nombre accesible (de {{nameMechanism}}) solo por una abreviatura o por la separación con guion.","labelInName_hint_cantTell":"Comprobar manualmente si ambas redacciones coinciden: el marcado no permite distinguir una abreviatura intencionada de una discrepancia.","ariaRolesValid_title":"El atributo role debe ser un rol ARIA válido y no abstracto","ariaRolesValid_description":"Comprueba que un atributo role=\"\" explícito se resuelva en un rol WAI-ARIA real y no abstracto.","ariaRolesValid_summary_invalid":"role=\"{{role}}\" no es un rol ARIA reconocido.","ariaRolesValid_hint_invalid":"Usar un token de rol ARIA válido, o eliminar el atributo role si no aplica ninguno.","ariaRolesValid_summary_abstract":"role=\"{{role}}\" es un rol ARIA abstracto, que no debe usarse directamente.","ariaRolesValid_hint_abstract":"Reemplazar este rol abstracto por un rol concreto adecuado para el widget o la estructura.","ariaDeprecatedRole_title":"El atributo role no debería usar un rol ARIA obsoleto o desaconsejado para autores","ariaDeprecatedRole_description":"Comprueba que un atributo role=\"\" explícito no use un rol obsoleto según la especificación WAI-ARIA, ni uno reservado para uso interno del agente de usuario (por ejemplo, role=\"generic\").","ariaDeprecatedRole_summary_fail":"Este elemento usa role=\"{{role}}\", que los autores no deben declarar explícitamente.","ariaDeprecatedRole_summary_cantTell":"Este elemento usa role=\"{{role}}\", que está obsoleto en WAI-ARIA (todavía válido, pero desaconsejado).","ariaDeprecatedRole_summary_cantTell_discouraged":"Este elemento usa role=\"{{role}}\", que está reservado para los agentes de usuario (todavía válido, pero desaconsejado).","ariaDeprecatedRole_guidance_directory":"Reemplazarlo por role=\"list\" (su reemplazo recomendado).","ariaDeprecatedRole_guidance_generic":"Eliminarlo: este rol está reservado para uso interno de los agentes de usuario, no para los autores. Usar en su lugar role=\"presentation\"/\"none\" para quitar la semántica, un rol semántico como \"group\" para expresar agrupación, o simplemente un elemento corriente (que ya lleva el rol generic implícito).","ariaDeprecatedRole_guidance_default":"Reemplazar el rol obsoleto por su reemplazo recomendado.","ariaValidAttr_title":"Los atributos aria-* deben ser atributos ARIA reales y definidos","ariaValidAttr_description":"Comprueba que cada nombre de atributo aria-* presente en el DOM sea un atributo real definido por la especificación WAI-ARIA.","ariaValidAttr_summary_fail":"{{attr}} no es un atributo ARIA reconocido.","ariaValidAttr_hint_fail":"Corregir el nombre del atributo (comprobar si hay errores tipográficos), o eliminarlo si no es necesario.","ariaValidAttrValue_title":"Los valores de los atributos aria-* deben coincidir con su tipo declarado","ariaValidAttrValue_description":"Comprueba que cada atributo aria-* reconocido tenga un valor conforme a su tipo declarado por WAI-ARIA (booleano, tri-estado, token, entero, número o referencia de ID).","ariaValidAttrValue_summary_fail":"{{attr}}=\"{{value}}\" no es un valor válido para este atributo.","ariaValidAttrValue_hint_fail":"Usar un valor que coincida con el tipo esperado del atributo (consultar la especificación WAI-ARIA para este atributo).","ariaAllowedAttr_title":"Los atributos aria-* deben estar permitidos para el rol del elemento","ariaAllowedAttr_description":"Comprueba que cada atributo aria-* reconocido presente en un elemento con un rol explícito esté admitido globalmente o admitido por ese rol.","ariaAllowedAttr_summary_fail":"{{attr}} no está permitido en role=\"{{role}}\".","ariaAllowedAttr_hint_fail":"Eliminar este atributo, o usar un rol que lo admita.","ariaAllowedAttr_summary_cantTell":"{{attr}} está obsoleto en role=\"{{role}}\" (todavía permitido, pero desaconsejado).","ariaAllowedAttr_hint_cantTell":"Este atributo se eliminó del conjunto global de ARIA en 1.2; elimínelo o use un rol que lo admita, ya que una versión futura de ARIA podría no permitirlo.","ariaProhibitedAttr_title":"Los atributos de nombrado ARIA no deben usarse en roles que los prohíban","ariaProhibitedAttr_description":"Comprueba que aria-label/aria-labelledby no estén presentes en roles WAI-ARIA cuya especificación prohíbe explícitamente el nombrado ARIA (por ejemplo, generic, emphasis, strong, paragraph).","ariaProhibitedAttr_summary_fail":"{{attr}} está prohibido en role=\"{{role}}\".","ariaProhibitedAttr_hint_fail":"Eliminar este atributo; este rol no debe tener un nombre accesible.","ariaProhibitedAttr_summary_fail_roleless":"Este {{element}} no tiene rol ni ninguna otra fuente de nombre accesible, por lo que {{attr}} no se expone de forma fiable a las tecnologías de asistencia.","ariaProhibitedAttr_hint_fail_roleless":"Asignar a este elemento un rol que admita un nombre accesible (por ejemplo, role=\"img\"/\"button\"), o eliminar este atributo si no cumple ningún propósito sin uno.","ariaProhibitedAttr_summary_cantTell_roleless":"Este {{element}} no tiene rol, por lo que es posible que {{attr}} no se exponga como su nombre accesible a las tecnologías de asistencia; pero el propio contenido del elemento ya proporciona uno.","ariaProhibitedAttr_hint_cantTell_roleless":"Verificar si el contenido de texto existente ya funciona como etiqueta de este elemento; si es así, el atributo de nombrado es redundante, de lo contrario asignar al elemento un rol que admita nombrado (por ejemplo, role=\"img\").","ariaRequiredAttr_title":"Los roles con un estado/propiedad ARIA obligatorio deben incluirlo","ariaRequiredAttr_description":"Comprueba que los elementos con un rol explícito lleven todo estado/propiedad aria-* obligatorio, inequívoco e independiente del contexto para ese rol (por ejemplo, role=\"checkbox\" debe tener aria-checked).","ariaRequiredAttr_summary_fail":"{{attr}} es obligatorio para role=\"{{role}}\", pero falta.","ariaRequiredAttr_hint_fail":"Agregar este atributo con un valor válido para este rol.","ariaAllowedRole_title":"El rol explícito debe estar permitido para su elemento anfitrión","ariaAllowedRole_description":"Comprueba que un atributo role=\"\" explícito sea uno de los roles que la especificación ARIA-in-HTML permite para el elemento anfitrión (por ejemplo, role=\"tab\" no está permitido en \u003cnav>).","ariaAllowedRole_summary_fail":"role=\"{{role}}\" no está permitido en \u003c{{element}}>.","ariaAllowedRole_hint_fail":"Usar un rol permitido para este elemento, o cambiar el elemento anfitrión.","ariaRequiredChildren_title":"Los roles contenedores deben poseer al menos un rol hijo obligatorio","ariaRequiredChildren_description":"Comprueba que los roles contenedores con una entrada documentada de \"elementos propios obligatorios\" (list, listbox, menu, radiogroup, table, grid, tablist, tree, row, ...) contengan al menos un descendiente, o un elemento referenciado por aria-owns, con un rol propio aceptable.","ariaRequiredChildren_summary_fail":"role=\"{{role}}\" no tiene ningún hijo propio con alguno de los roles obligatorios: {{requiredRoles}}.","ariaRequiredChildren_hint_fail":"Agregar un descendiente (o un elemento referenciado por aria-owns) con alguno de los roles propios obligatorios.","ariaProhibitedChildren_title":"Los roles contenedores no deben poseer un hijo con un rol no permitido","ariaProhibitedChildren_description":"Comprueba que todo hijo perteneciente al árbol de accesibilidad de un rol contenedor (list, listbox, menu, menubar, radiogroup, rowgroup, table, grid, treegrid, tablist, tree, row) tenga uno de los roles propios permitidos por ese rol.","ariaProhibitedChildren_summary_fail":"Este elemento tiene role=\"{{childRole}}\", que no es un rol hijo propio permitido dentro del contenedor role=\"{{containerRole}}\" que lo envuelve.","ariaProhibitedChildren_hint_fail":"Eliminar o cambiar este rol para que coincida con uno de los roles propios permitidos del contenedor ({{allowedRoles}}), o mover este elemento fuera del contenedor {{containerRole}}.","ariaProhibitedChildren_summary_fail_roleless":"Este elemento no tiene un rol explícito pero lleva {{attr}}, lo que lo convierte en un nodo real del árbol de accesibilidad que no es un hijo propio permitido dentro del contenedor role=\"{{containerRole}}\" que lo envuelve.","ariaProhibitedChildren_hint_fail_roleless":"Eliminar {{attr}} (o la pertenencia al contenedor role=\"{{containerRole}}\"), o asignar a este elemento role=\"presentation\"/\"none\" si no está pensado para ser su propio nodo del árbol de accesibilidad.","ariaProhibitedChildren_summary_fail_native_focusable":"Este elemento no tiene un rol explícito, pero es enfocable de forma nativa, lo que lo convierte en un nodo real del árbol de accesibilidad que no es un hijo propio permitido dentro del contenedor role=\"{{containerRole}}\" que lo envuelve.","ariaProhibitedChildren_hint_fail_native_focusable":"Asignar a este elemento role=\"presentation\"/\"none\", eliminar su capacidad de enfoque nativa (por ejemplo, quitar el atributo href/tabindex que la otorga), o moverlo fuera del contenedor {{containerRole}}.","ariaRequiredParent_title":"Los roles que requieren un rol de contexto específico deben estar en ese contexto","ariaRequiredParent_description":"Comprueba que los roles con una entrada documentada de \"rol de contexto obligatorio\" (listitem, option, tab, treeitem, row, cell, ...) tengan un ancestro, o un propietario aria-owns, con un rol de contexto aceptable.","ariaRequiredParent_summary_fail":"role=\"{{role}}\" requiere un rol de contexto entre: {{requiredRoles}}, que no se encontró.","ariaRequiredParent_hint_fail":"Colocar este elemento dentro de (o referenciarlo mediante aria-owns desde) un elemento con un rol de contexto aceptable.","deprecatedElements_title":"No deben usarse elementos obsoletos no detenibles (\u003cblink>, \u003cmarquee>)","deprecatedElements_description":"Comprueba que no estén presentes elementos HTML obsoletos y no estándar cuyo contenido parpadeante o en desplazamiento no pueda ser pausado, detenido u ocultado por el usuario (\u003cblink>, \u003cmarquee>).","deprecatedElements_summary_fail":"El contenido de \u003c{{element}}> no puede ser pausado, detenido ni ocultado por el usuario.","deprecatedElements_hint_fail":"Eliminar este elemento; usar contenido estático, o una animación con un control de pausa/detención visible para el usuario, en su lugar.","iframeNamePresent_title":"Los marcos tienen un nombre accesible","iframeNamePresent_description":"Comprueba que los elementos \u003ciframe>/\u003cframe> expongan un nombre accesible no vacío mediante aria-label, aria-labelledby o el atributo title.","iframeNamePresent_summary_fail":"Este \u003c{{element}}> no tiene nombre accesible.","iframeNamePresent_hint_fail":"Agregar un atributo title (o aria-label/aria-labelledby) que describa el contenido o el propósito del marco.","iframeTitleUnique_title":"Los títulos de los marcos deben ser únicos","iframeTitleUnique_description":"Comprueba que dos elementos \u003ciframe>/\u003cframe> no compartan, dentro del alcance, el mismo valor de atributo title.","iframeTitleUnique_summary_fail":"El título \"{{title}}\" de este \u003c{{element}}> no es único entre los marcos de esta página.","iframeTitleUnique_hint_fail":"Asignar a cada marco un título distinto que describa su contenido o propósito específico.","iframeFocusableContent_title":"Los marcos con tabindex=\"-1\" no deben contener contenido enfocable","iframeFocusableContent_description":"Comprueba que los elementos \u003ciframe>/\u003cframe> del mismo origen con tabindex=\"-1\" no contengan contenido enfocable, ya que los navegadores no propagan esa restricción al documento incrustado del marco.","iframeFocusableContent_summary_fail":"Este \u003c{{element}}> tiene tabindex=\"-1\" pero su contenido incluye elementos enfocables, que siguen siendo alcanzables por teclado.","iframeFocusableContent_hint_fail":"Eliminar el contenido enfocable del marco, o eliminar tabindex=\"-1\" si el marco está pensado para ser alcanzable.","tableHeadersAttrValid_title":"El atributo \"headers\" de la celda de tabla debe referenciar celdas de encabezado válidas","tableHeadersAttrValid_description":"Comprueba que cada id en un atributo headers de \u003ctd>/\u003cth> se resuelva en un elemento \u003cth> dentro de la misma tabla (que no falte, que no sea un elemento distinto de th, y que no sea él mismo).","tableHeadersAttrValid_summary_fail":"El atributo headers de este \u003c{{element}}> referencia celda(s) de encabezado no válida(s): {{invalidIds}}.","tableHeadersAttrValid_hint_fail":"Actualizar el atributo headers para que cada id haga referencia a un elemento \u003cth> dentro de la misma tabla.","tableThHasDataCells_title":"Los elementos \u003cth> deben describir al menos una celda de datos","tableThHasDataCells_description":"Comprueba que una tabla que contiene elementos \u003cth> también contenga al menos una celda de datos \u003ctd> para que esos encabezados describan.","tableThHasDataCells_summary_fail":"Esta tabla tiene celdas de encabezado pero ninguna celda de datos que describir.","tableThHasDataCells_hint_fail":"Agregar celdas de datos (\u003ctd>) a la tabla, o eliminar las celdas de encabezado si la tabla no tiene datos.","ariaHiddenBody_title":"El \u003cbody> del documento no debe ser aria-hidden","ariaHiddenBody_description":"Comprueba que \u003cbody> no tenga aria-hidden=\"true\", lo que eliminaría toda la página del árbol de accesibilidad.","ariaHiddenBody_summary_fail":"El body del documento tiene aria-hidden=\"true\", lo que oculta toda la página a las tecnologías de asistencia.","ariaHiddenBody_hint_fail":"Eliminar aria-hidden de \u003cbody>. Ocultar elementos específicos en su lugar, si esa era la intención.","listChildrenValid_title":"Las listas solo deben contener directamente elementos de lista","listChildrenValid_description":"Comprueba que los elementos \u003cul>/\u003col> solo tengan como hijos directos \u003cli>, \u003cscript> o \u003ctemplate>.","listChildrenValid_summary_fail":"Este \u003c{{element}}> contiene un hijo directo que no es un elemento de lista: {{invalidChildren}}.","listChildrenValid_hint_fail":"Usar únicamente \u003cli> (o \u003cscript>/\u003ctemplate>) como hijos directos de \u003cul>/\u003col>; mover el resto del marcado dentro de un \u003cli>.","listitemParentValid_title":"Los elementos de lista deben estar dentro de un contenedor de lista","listitemParentValid_description":"Comprueba que los elementos \u003cli> estén contenidos por \u003cul>, \u003col>, o un elemento con role=\"list\".","listitemParentValid_summary_fail":"El padre de este elemento de lista (\u003c{{parentElement}}>) no es un contenedor de lista.","listitemParentValid_hint_fail":"Colocar este \u003cli> dentro de un \u003cul>/\u003col>, o asignar a su padre role=\"list\".","definitionListChildrenValid_title":"Las listas de descripción deben estar estructuradas correctamente","definitionListChildrenValid_description":"Comprueba que los elementos \u003cdl> solo contengan directamente grupos \u003cdt>/\u003cdd> (opcionalmente envueltos en un \u003cdiv>), \u003cscript>, \u003ctemplate> o \u003cstyle>.","definitionListChildrenValid_summary_fail_invalidChild":"Esta lista de descripción contiene un hijo directo o envuelto que no forma parte de un grupo dt/dd: {{invalidChildren}}.","definitionListChildrenValid_hint_fail_invalidChild":"Usar únicamente \u003cdt>/\u003cdd> (opcionalmente envueltos en un \u003cdiv>), \u003cscript>, \u003ctemplate> o \u003cstyle> dentro de \u003cdl>.","definitionListChildrenValid_summary_fail_noDtDd":"Esta lista de descripción no tiene ningún grupo término-definición \u003cdt>/\u003cdd>.","definitionListChildrenValid_hint_fail_noDtDd":"Agregar al menos un par \u003cdt>/\u003cdd> dentro de este \u003cdl>.","dlitemParentValid_title":"Los elementos de lista de descripción deben estar dentro de una lista de descripción","dlitemParentValid_description":"Comprueba que los elementos \u003cdt>/\u003cdd> estén contenidos por un \u003cdl>, directamente o mediante un único \u003cdiv> envolvente.","dlitemParentValid_summary_fail":"El padre (\u003c{{parentElement}}>) de este \u003c{{element}}> no es una lista de descripción.","dlitemParentValid_hint_fail":"Colocar este \u003cdt>/\u003cdd> dentro de un \u003cdl>, directamente o envuelto en un único \u003cdiv>.","duplicateIdAria_title":"Los IDs referenciados por ARIA deben ser únicos","duplicateIdAria_description":"Comprueba que cualquier valor de id referenciado por un atributo de referencia de ID de ARIA (aria-labelledby, aria-describedby, aria-owns, aria-controls, aria-activedescendant, aria-flowto, aria-errormessage, aria-details) sea único en el documento.","duplicateIdAria_summary_cantTell":"El id \"{{id}}\" está referenciado por un atributo ARIA, pero lo usan {{duplicateCount}} elementos; la referencia apunta al primero.","duplicateIdAria_hint_cantTell":"Comprobar que el primer elemento con ese id es el destino previsto, o hacer único el id dentro del documento.","summaryNamePresent_title":"Los elementos \u003csummary> tienen un nombre accesible","summaryNamePresent_description":"Comprueba que los elementos \u003csummary> expongan un nombre accesible no vacío.","summaryNamePresent_summary_fail":"Este resumen no tiene nombre accesible.","summaryNamePresent_hint_fail":"Proporcionar texto de resumen que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","metaViewportZoomEnabled_title":"La etiqueta meta viewport no debe deshabilitar el zoom","metaViewportZoomEnabled_description":"Comprueba que \u003cmeta name=\"viewport\"> no establezca user-scalable=no ni maximum-scale por debajo de 2 (200%).","metaViewportZoomEnabled_summary_fail":"Esta etiqueta meta viewport restringe la capacidad del usuario para hacer zoom ({{reasons}}).","metaViewportZoomEnabled_hint_fail":"Eliminar user-scalable=no y cualquier maximum-scale por debajo de 2 del contenido de la etiqueta meta viewport.","metaRefreshTimingAbsent_title":"La página no debe usar un meta refresh con temporización","metaRefreshTimingAbsent_description":"Comprueba que \u003cmeta http-equiv=\"refresh\"> no imponga un retraso positivo de 20 horas o menos.","metaRefreshTimingAbsent_summary_fail":"Esta página se actualiza automáticamente después de {{delay}} segundos.","metaRefreshTimingAbsent_hint_fail":"Eliminar el meta refresh con temporización, o proporcionar una forma de que los usuarios lo desactiven, lo extiendan o lo pausen antes de que se active.","meterNamePresent_title":"Los medidores tienen un nombre accesible","meterNamePresent_description":"Comprueba que los elementos con role=\"meter\" expongan un nombre accesible no vacío.","meterNamePresent_summary_fail":"Este medidor no tiene nombre accesible.","meterNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este medidor.","progressbarNamePresent_title":"Las barras de progreso tienen un nombre accesible","progressbarNamePresent_description":"Comprueba que los elementos con role=\"progressbar\" expongan un nombre accesible no vacío.","progressbarNamePresent_summary_fail":"Esta barra de progreso no tiene nombre accesible.","progressbarNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de esta barra de progreso.","tooltipNamePresent_title":"La información sobre herramientas tiene un nombre accesible","tooltipNamePresent_description":"Comprueba que los elementos con role=\"tooltip\" expongan un nombre accesible no vacío.","tooltipNamePresent_summary_fail":"Esta información sobre herramientas no tiene nombre accesible.","tooltipNamePresent_hint_fail":"Proporcionar texto de información sobre herramientas que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","serverSideImageMapAbsent_title":"Las imágenes no deben usar un mapa de imagen del lado del servidor","serverSideImageMapAbsent_description":"Comprueba que los elementos \u003cimg> no lleven el atributo ismap (los mapas de imagen del lado del servidor no tienen equivalente operable por teclado).","serverSideImageMapAbsent_summary_fail":"Esta imagen usa un mapa de imagen del lado del servidor, que no tiene equivalente operable por teclado.","serverSideImageMapAbsent_hint_fail":"Reemplazar el mapa de imagen del lado del servidor (ismap) por un mapa de imagen del lado del cliente (\u003cmap>/\u003carea>) o por enlaces/botones accesibles independientes.","formControlSingleLabel_title":"Los controles de formulario no deben tener varias etiquetas","formControlSingleLabel_description":"Comprueba que un control de formulario esté asociado a como máximo una \u003clabel> (por envoltura o mediante label[for]).","formControlSingleLabel_summary_fail":"Este \u003c{{element}}> está asociado a {{labelCount}} etiquetas.","formControlSingleLabel_hint_fail":"Mantener solo una \u003clabel> por control de formulario (ya sea envolviéndolo o referenciándolo mediante for/id).","formControlSingleLabel_summary_cantTell":"Este \u003c{{element}}> tiene una \u003clabel> que lo etiqueta más una asociación de \u003clabel> vacía adicional; verifique cómo se anuncia.","formControlSingleLabel_hint_cantTell":"Elimine la \u003clabel> vacía redundante para que solo una \u003clabel> quede asociada al control.","nestedInteractiveControlsAbsent_title":"Los controles interactivos no deben estar anidados","nestedInteractiveControlsAbsent_description":"Comprueba que un control interactivo (enlace, botón, control de formulario o rol de widget ARIA) no contenga otro control interactivo.","nestedInteractiveControlsAbsent_summary_fail":"Este \u003c{{element}}> contiene uno o más controles interactivos anidados: {{nestedElements}}.","nestedInteractiveControlsAbsent_hint_fail":"Mover el/los control(es) interactivo(s) anidado(s) fuera de este elemento; los controles interactivos anidados no son operables de forma fiable mediante tecnología de asistencia.","bypassBlocksPresent_title":"La página debe proporcionar una forma de omitir bloques repetidos","bypassBlocksPresent_description":"Comprueba que la página tenga al menos un mecanismo reconocido de omisión de bloques del criterio de éxito 2.4.1 de WCAG: un landmark main, un enlace de anclaje funcional dentro de la misma página, o un encabezado.","bypassBlocksPresent_summary_cantTell":"No se detectó ninguna forma reconocida de omitir bloques de contenido repetidos en esta página; verifique que exista un mecanismo de omisión.","bypassBlocksPresent_hint_cantTell":"Confirme que la página ofrece un mecanismo de omisión: un landmark main (\u003cmain> o role=\"main\"), un enlace funcional de \"saltar al contenido\", o elementos de encabezado que las tecnologías de asistencia puedan usar para saltar el contenido repetido. (Un mecanismo puede estar oculto temporalmente —por ejemplo, mientras un diálogo modal deja la página inerte— o proporcionarse a nivel de sitio; esto requiere confirmación humana.)","landmarkBannerIsTopLevel_title":"El landmark banner debe ser de nivel superior","landmarkBannerIsTopLevel_description":"Comprueba que el landmark banner (role=\"banner\" o un \u003cheader> no anidado) no esté anidado dentro de otra región landmark.","landmarkBannerIsTopLevel_summary_cantTell":"Este landmark banner está anidado dentro de otra región landmark.","landmarkBannerIsTopLevel_hint_cantTell":"Mover el landmark banner (header/role=\"banner\") para que no esté contenido por otro landmark; un banner debe ser una región de nivel superior de la página.","landmarkContentinfoIsTopLevel_title":"El landmark contentinfo debe ser de nivel superior","landmarkContentinfoIsTopLevel_description":"Comprueba que el landmark contentinfo (role=\"contentinfo\" o un \u003cfooter> no anidado) no esté anidado dentro de otra región landmark.","landmarkContentinfoIsTopLevel_summary_cantTell":"Este landmark contentinfo está anidado dentro de otra región landmark.","landmarkContentinfoIsTopLevel_hint_cantTell":"Mover el landmark contentinfo (footer/role=\"contentinfo\") para que no esté contenido por otro landmark; contentinfo debe ser una región de nivel superior de la página.","landmarkMainIsTopLevel_title":"El landmark main debe ser de nivel superior","landmarkMainIsTopLevel_description":"Comprueba que el landmark main (role=\"main\" o \u003cmain>) no esté anidado dentro de otra región landmark.","landmarkMainIsTopLevel_summary_cantTell":"Este landmark main está anidado dentro de otra región landmark.","landmarkMainIsTopLevel_hint_cantTell":"Mover el landmark main (\u003cmain>/role=\"main\") para que no esté contenido por otro landmark; main debe ser una región de nivel superior de la página.","landmarkNoDuplicateBanner_title":"La página no debe tener más de un landmark banner","landmarkNoDuplicateBanner_description":"Comprueba que exista como máximo un landmark banner (role=\"banner\" o un \u003cheader> no anidado) en la página.","landmarkNoDuplicateBanner_summary_cantTell":"Esta página tiene más de un landmark banner.","landmarkNoDuplicateBanner_hint_cantTell":"Mantener solo un landmark banner (header/role=\"banner\") por página.","landmarkNoDuplicateContentinfo_title":"La página no debe tener más de un landmark contentinfo","landmarkNoDuplicateContentinfo_description":"Comprueba que exista como máximo un landmark contentinfo (role=\"contentinfo\" o un \u003cfooter> no anidado) en la página.","landmarkNoDuplicateContentinfo_summary_cantTell":"Esta página tiene más de un landmark contentinfo.","landmarkNoDuplicateContentinfo_hint_cantTell":"Mantener solo un landmark contentinfo (footer/role=\"contentinfo\") por página.","landmarkNoDuplicateMain_title":"La página no debe tener más de un landmark main","landmarkNoDuplicateMain_description":"Comprueba que exista como máximo un landmark main (role=\"main\" o \u003cmain>) en la página.","landmarkNoDuplicateMain_summary_cantTell":"Esta página tiene más de un landmark main.","landmarkNoDuplicateMain_hint_cantTell":"Mantener solo un landmark main (\u003cmain>/role=\"main\") por página.","landmarkOneMain_title":"La página debería tener un landmark main","landmarkOneMain_description":"Comprueba que la página tenga al menos un landmark main (role=\"main\" o \u003cmain>).","landmarkOneMain_summary_cantTell_missing":"Esta página no tiene ningún landmark main.","landmarkOneMain_hint_cantTell_missing":"Agregar un landmark main (\u003cmain> o role=\"main\") alrededor del contenido principal de la página.","landmarkUnique_title":"Los landmarks con el mismo rol deben tener nombres únicos","landmarkUnique_description":"Comprueba que, cuando dos o más landmarks comparten el mismo rol, cada uno tenga un nombre accesible distinto.","landmarkUnique_summary_cantTell_duplicateName":"Este landmark {{role}} comparte su nombre accesible con otro landmark {{role}}.","landmarkUnique_summary_cantTell_bothUnnamed":"Este landmark {{role}} no tiene nombre accesible, y existe más de un landmark {{role}} sin nombre en esta página.","landmarkUnique_hint_cantTell":"Asignar a cada landmark {{role}} un nombre distinto mediante aria-label o aria-labelledby.","emptyHeading_title":"Los encabezados no deben estar vacíos","emptyHeading_description":"Comprueba que los elementos de encabezado (\u003ch1>-\u003ch6> o role=\"heading\") tengan un nombre accesible no vacío.","emptyHeading_summary_cantTell":"Este encabezado no tiene nombre accesible.","emptyHeading_hint_cantTell":"Agregar contenido de texto (o aria-label/aria-labelledby) a este encabezado, o eliminarlo si no es necesario.","headingOrder_title":"Los niveles de encabezado no deben saltar un nivel","headingOrder_description":"Comprueba que los niveles de encabezado aumenten como máximo en uno a la vez en el orden del documento.","headingOrder_summary_cantTell":"Este encabezado salta del nivel {{fromLevel}} al nivel {{toLevel}}, saltándose un nivel.","headingOrder_hint_cantTell":"Usar niveles de encabezado consecutivos (no saltar un nivel al profundizar) para que el esquema del documento se mantenga predecible.","pageHasHeadingOne_title":"La página debería tener un encabezado de nivel uno","pageHasHeadingOne_description":"Comprueba que la página tenga al menos un encabezado de nivel uno (\u003ch1> o role=\"heading\" con aria-level=\"1\").","pageHasHeadingOne_summary_cantTell":"Esta página no tiene ningún encabezado de nivel uno.","pageHasHeadingOne_hint_cantTell":"Agregar un encabezado de nivel uno (\u003ch1> o role=\"heading\" aria-level=\"1\") que identifique el contenido principal de la página.","accesskeys_title":"Los valores de accesskey deben ser únicos","accesskeys_description":"Comprueba que no haya dos elementos en la página que compartan el mismo valor de atributo accesskey.","accesskeys_summary_cantTell":"El accesskey de este elemento se comparte con otro elemento de la página.","accesskeys_hint_cantTell":"Hacer único cada valor de accesskey en toda la página.","scopeAttrValid_title":"El atributo scope debe tener un valor válido","scopeAttrValid_description":"Comprueba que scope=\"...\" sea uno de los valores row, col, rowgroup o colgroup.","scopeAttrValid_summary_cantTell":"Este valor del atributo scope no se reconoce.","scopeAttrValid_hint_cantTell":"Usar uno de los valores row, col, rowgroup o colgroup para el atributo scope.","tabindex_title":"tabindex no debería ser mayor que 0","tabindex_description":"Comprueba que los valores de tabindex sean 0 o negativos, no un número positivo.","tabindex_summary_cantTell":"Este elemento tiene un tabindex positivo, lo que sobrescribe el orden de tabulación natural.","tabindex_hint_cantTell":"Usar tabindex=\"0\" (o un valor negativo para eliminarlo del orden de tabulación) en lugar de un número positivo; corregir el orden del DOM si se necesita un orden de tabulación diferente.","emptyTableHeader_title":"Las celdas de encabezado de tabla no deben estar vacías","emptyTableHeader_description":"Comprueba que los elementos \u003cth> tengan contenido de texto visible; un encabezado nombrado únicamente mediante aria-label/aria-labelledby también se señala, ya que el soporte real de lectores de pantalla/navegadores para eso es inconsistente.","emptyTableHeader_summary_cantTell":"Esta celda de encabezado de tabla no tiene nombre accesible.","emptyTableHeader_hint_cantTell":"Agregar contenido de texto (o aria-label/aria-labelledby) a esta celda de encabezado, o eliminarla si no es necesaria.","emptyTableHeader_summary_cantTell_ariaOnly":"Esta celda de encabezado de tabla no tiene texto visible; su único nombre accesible proviene de aria-label/aria-labelledby, que se sabe que ciertas combinaciones reales de lector de pantalla/navegador (por ejemplo, NVDA+Firefox, iOS VoiceOver+Safari) ignoran en elementos \u003cth>.","emptyTableHeader_hint_cantTell_ariaOnly":"Agregar contenido de texto visible a esta celda de encabezado (además de, o en lugar de, aria-label/aria-labelledby); el texto visible es el único mecanismo de nombrado confirmado que funciona en los lectores de pantalla probados.","labelTitleOnly_title":"Los controles de formulario no deben usar title como única etiqueta","labelTitleOnly_description":"Comprueba que un control de formulario con un atributo title también tenga una etiqueta real (elemento label, aria-label o aria-labelledby).","labelTitleOnly_summary_cantTell":"Este control de formulario depende del atributo title como única etiqueta.","labelTitleOnly_hint_cantTell":"Agregar una \u003clabel> visible (o aria-label/aria-labelledby) además de, o en lugar de, el atributo title.","imageRedundantAlt_title":"El texto alt de la imagen no debe duplicar el texto visible adyacente","imageRedundantAlt_description":"Comprueba que el texto alt de un \u003cimg> no sea idéntico a otro texto visible ya presente en su elemento padre inmediato.","imageRedundantAlt_summary_cantTell":"El texto alt de esta imagen duplica otro texto visible justo al lado.","imageRedundantAlt_hint_cantTell":"Dejar el texto alt vacío (alt=\"\") si la imagen es puramente decorativa junto al texto, o eliminar la duplicación redundante.","tableDuplicateName_title":"El caption de la tabla no debe duplicar su atributo summary","tableDuplicateName_description":"Comprueba que el texto del \u003ccaption> de una \u003ctable> no sea idéntico a su atributo summary (obsoleto).","tableDuplicateName_summary_cantTell":"El caption de esta tabla duplica su atributo summary.","tableDuplicateName_hint_cantTell":"Eliminar el atributo summary redundante, o hacer que proporcione información diferente a la del caption.","metaViewportLarge_title":"La etiqueta meta viewport debería permitir el zoom hasta el 500%","metaViewportLarge_description":"Comprueba que \u003cmeta name=\"viewport\"> no establezca user-scalable=no ni maximum-scale por debajo de 5 (500%).","metaViewportLarge_summary_cantTell":"Esta etiqueta meta viewport restringe el zoom por debajo del objetivo recomendado del 500%.","metaViewportLarge_hint_cantTell":"Eliminar user-scalable=no y elevar maximum-scale a al menos 5 (500%) si es posible.","presentationRoleConflict_title":"El rol presentacional no debe entrar en conflicto con un atributo ARIA global ni con la capacidad de enfoque","presentationRoleConflict_description":"Comprueba que role=\"presentation\"/\"none\" (incluido el rol de presentación implícito de \u003cimg alt=\"\">) no se combine con un atributo ARIA global (aria-label, aria-hidden, aria-describedby, ...) ni con la capacidad de enfoque (tabindex/nativa).","presentationRoleConflict_summary_cantTell":"Este elemento con role=\"{{role}}\" también tiene una condición conflictiva ({{attrs}}), lo que restaura su rol implícito y anula la intención presentacional.","presentationRoleConflict_hint_cantTell":"Eliminar el/los atributo(s) de nombrado conflictivo(s) y/o la capacidad de enfoque (tabindex/nativa) si el elemento debe permanecer presentacional, o eliminar role=\"presentation\"/\"none\" si debe exponerse a las tecnologías de asistencia.","region_title":"El contenido de la página debería estar dentro de una región landmark","region_description":"Comprueba que el contenido bajo \u003cbody> esté contenido dentro de una región landmark.","region_summary_cantTell":"Este contenido no está contenido dentro de ninguna región landmark.","region_hint_cantTell":"Mover este contenido dentro de una región landmark (main, nav, aside, una section etiquetada, etc.).","skipLink_title":"El enlace de salto debe tener un destino resoluble y utilizable","skipLink_description":"Comprueba que el fragmento href de un enlace de \"saltar a...\" se resuelva en un elemento real y actualmente utilizable del documento.","skipLink_summary_cantTell":"El destino de este enlace de salto no existe.","skipLink_hint_cantTell":"Apuntar el href del enlace de salto a un id que exista en el documento, o agregar el elemento destino que falta.","skipLink_summary_unusableTarget_cantTell":"Este enlace de salto apunta a un destino que existe pero que actualmente no es utilizable.","skipLink_hint_unusableTarget_cantTell":"Apuntar este enlace de salto a un destino que esté expuesto y sea utilizable como destino de navegación.","autocompleteValid_title":"El atributo autocomplete debe tener un valor de autocompletado válido","autocompleteValid_description":"Comprueba que un atributo autocomplete no vacío sea \"on\"/\"off\" o una lista de tokens de detalle de autocompletado bien formada.","autocompleteValid_summary_fail":"Este valor del atributo autocomplete no es un valor de autocompletado válido.","autocompleteValid_hint_fail":"Usar \"on\"/\"off\", o una lista de tokens de autocompletado válida (por ejemplo, \"shipping street-address\", \"cc-number\").","htmlXmlLangMismatch_title":"lang y xml:lang no deben estar en desacuerdo","htmlXmlLangMismatch_description":"Comprueba que los atributos lang y xml:lang del elemento \u003chtml> declaren el mismo idioma principal, cuando ambos están presentes.","htmlXmlLangMismatch_summary_fail":"Los atributos lang (\"{{lang}}\") y xml:lang (\"{{xmlLang}}\") declaran idiomas diferentes.","htmlXmlLangMismatch_hint_fail":"Hacer que lang y xml:lang declaren el mismo idioma principal, o eliminar el atributo obsoleto xml:lang.","avoidInlineSpacing_title":"El estilo en línea no debe forzar el espaciado de texto por debajo del umbral WCAG","avoidInlineSpacing_description":"Comprueba que cuando el estilo en línea fuerza line-height, letter-spacing o word-spacing con !important, el valor ya cumple WCAG 1.4.12, por lo que al usuario no le queda nada que anular.","avoidInlineSpacing_summary_fail":"El estilo en línea de este elemento fuerza {{properties}} con !important, bloqueando las anulaciones de espaciado de texto del usuario.","avoidInlineSpacing_hint_fail":"Eliminar !important de line-height/letter-spacing/word-spacing en los estilos en línea para que los usuarios puedan anular el espaciado de texto.","metaRefreshNoExceptions_title":"La página no debe usar un meta refresh en absoluto (AAA)","metaRefreshNoExceptions_description":"Comprueba que \u003cmeta http-equiv=\"refresh\"> no esté presente en absoluto, independientemente del retraso; es la contraparte más estricta de nivel AAA de la comprobación de nivel A que solo se aplica a los retrasos positivos.","metaRefreshNoExceptions_summary_fail":"Esta página usa un meta refresh, que es un cambio de contexto automático no iniciado por el usuario.","metaRefreshNoExceptions_hint_fail":"Eliminar el meta refresh; activar la redirección/actualización solo en respuesta a una acción del usuario.","validLang_title":"El atributo lang del elemento debe ser sintácticamente válido","validLang_description":"Comprueba que cualquier elemento (distinto de la raíz \u003chtml>) con un atributo lang no vacío use una etiqueta de idioma sintácticamente válida.","validLang_summary_fail":"Este valor del atributo lang (\"{{value}}\") no es una etiqueta de idioma sintácticamente válida.","validLang_hint_fail":"Usar una etiqueta de idioma BCP47 válida (por ejemplo, \"fr\", \"es-MX\").","linkInTextBlock_title":"Los enlaces dentro de bloques de texto deben distinguirse del texto circundante sin depender únicamente del color","linkInTextBlock_description":"Comprueba que un enlace dentro de un bloque de texto se distinga visualmente del texto circundante mediante subrayado, una diferencia de grosor/estilo de fuente, o una diferencia de contraste de color suficiente (>=3:1); no solo por el color.","linkInTextBlock_summary_fail":"Este enlace dentro de un bloque de texto depende únicamente del color para distinguirse del texto circundante.","linkInTextBlock_hint_fail":"Agregar un subrayado, una diferencia de grosor/estilo de fuente, o aumentar el contraste de color entre el enlace y el texto circundante a al menos 3:1.","noAutoplayAudio_title":"El audio en reproducción automática debería proporcionar un mecanismo de pausa/detención o control de volumen","noAutoplayAudio_description":"Señala elementos \u003caudio>/\u003cvideo> que se reproducen automáticamente sin silenciar y sin un atributo de controles nativo, para su revisión manual frente a la excepción de 3 segundos del criterio de éxito 1.4.2 de WCAG.","noAutoplayAudio_summary_cantTell":"Este elemento reproduce audio automáticamente sin un mecanismo nativo de pausa/detención o control de volumen.","noAutoplayAudio_hint_cantTell":"Si este clip dura más de 3 segundos, agregar un atributo controls (o un mecanismo personalizado equivalente) para que los usuarios puedan pausarlo/detenerlo o controlar su volumen independientemente del volumen del sistema.","videoCaption_title":"El video pregrabado debería proporcionar una pista de subtítulos","videoCaption_description":"Señala elementos \u003cvideo> sin un hijo \u003ctrack kind=\"captions\"|\"subtitles\">, para su revisión manual sobre si el video tiene una pista de audio que necesita subtítulos.","videoCaption_summary_cantTell":"Este video no tiene ninguna pista de subtítulos (captions o subtitles).","videoCaption_hint_cantTell":"Si este video tiene una pista de audio que transmite información, agregar un \u003ctrack kind=\"captions\" src=\"...\"> con el contenido subtitulado.","scrollableRegionFocusable_title":"Las regiones desplazables sin contenido enfocable deberían ser enfocables por teclado","scrollableRegionFocusable_description":"Señala elementos cuyo CSS declara overflow:auto/scroll, que no contienen ningún descendiente enfocable, y que no son enfocables por teclado por sí mismos, para su revisión manual sobre si su contenido realmente desborda y necesita acceso de desplazamiento por teclado.","scrollableRegionFocusable_summary_cantTell":"Este elemento declara overflow:auto/scroll, no tiene ningún descendiente enfocable, y no es enfocable por teclado por sí mismo.","scrollableRegionFocusable_hint_cantTell":"Si el contenido de esta región realmente desborda, agregar tabindex=\"0\" (y una etiqueta adecuada) para que los usuarios de teclado puedan enfocarla y desplazarse con las teclas de flecha.","identicalLinksSamePurpose_title":"Los enlaces con el mismo nombre accesible deberían llevar al mismo destino","identicalLinksSamePurpose_description":"Señala grupos de enlaces que comparten el mismo nombre accesible pero resuelven a más de un destino distinto, para su revisión manual sobre si cumplen el mismo propósito.","identicalLinksSamePurpose_summary_cantTell":"Este enlace comparte un nombre accesible con otros enlaces de la página que llevan a un destino diferente.","identicalLinksSamePurpose_hint_cantTell":"Asegurarse de que los enlaces con el mismo texto cumplan el mismo propósito, o hacer que el texto del enlace sea lo bastante distintivo para describir cada destino.","ariaBrailleEquivalent_title":"aria-braillelabel/aria-brailleroledescription deben tener un equivalente no braille","ariaBrailleEquivalent_description":"Comprueba que los elementos que usan aria-braillelabel también tengan un nombre accesible normal, y que los elementos que usan aria-brailleroledescription también tengan aria-roledescription.","ariaBrailleEquivalent_summary_fail":"Este elemento tiene {{attr}} pero no {{requires}}, su equivalente no braille.","ariaBrailleEquivalent_hint_fail":"{{attr}} es un complemento específico para braille, no un reemplazo; proporcionar también {{requires}}.","ariaConditionalAttr_title":"aria-errormessage requiere que aria-invalid tenga un valor distinto de false","ariaConditionalAttr_description":"Comprueba que los elementos con aria-errormessage también tengan aria-invalid establecido en \"true\", \"grammar\" o \"spelling\"; de lo contrario, el mensaje de error se elimina del árbol de accesibilidad.","ariaConditionalAttr_summary_fail":"Este elemento tiene aria-errormessage pero aria-invalid falta o es \"false\", por lo que el mensaje de error no se expone.","ariaConditionalAttr_hint_fail":"Establecer aria-invalid en \"true\" (o \"grammar\"/\"spelling\") siempre que aria-errormessage deba exponerse a las tecnologías de asistencia.","ariaCheckedStateMismatch_title":"El aria-checked de una casilla/botón de opción nativo debe coincidir con su estado real","ariaCheckedStateMismatch_description":"Señala un \u003cinput type=\"checkbox\">/\u003cinput type=\"radio\"> nativo cuyo valor explícito de aria-checked no coincide con su estado real marcado/indeterminado, para su revisión manual.","ariaCheckedStateMismatch_summary_cantTell":"El valor de aria-checked de este elemento no coincide con su estado real marcado/indeterminado.","ariaCheckedStateMismatch_hint_cantTell":"Establecer aria-checked para que coincida con el estado real del elemento, o eliminarlo; una casilla/botón de opción nativo ya expone este estado sin necesidad de él.","cssOrientationLock_title":"El CSS no debe bloquear la página a una única orientación","cssOrientationLock_description":"Comprueba que ninguna regla @media (orientation: portrait|landscape) establezca un transform: rotate(...) en la página, una técnica conocida para anular la orientación del dispositivo.","cssOrientationLock_summary_fail":"Una media query \"{{mediaText}}\" rota \"{{selectorText}}\", bloqueando la página a una sola orientación.","cssOrientationLock_summary_fail_unknownSelector":"Una consulta de medios \"{{mediaText}}\" rota un elemento sin selector legible y bloquea la página en una sola orientación.","cssOrientationLock_hint_fail":"Eliminar la transformación rotate() de la media query de orientación; dejar que la página responda de forma natural a la orientación del dispositivo en lugar de forzar una rotación visual.","ariaText_title":"Los elementos con role=\"text\" no deberían tener descendientes enfocables","ariaText_description":"Comprueba que los elementos con role=\"text\" no contengan ningún descendiente enfocable (enlace, botón, control de formulario, tabindex, iframe o contenteditable).","ariaText_summary_cantTell":"Este elemento con role=\"text\" contiene un descendiente enfocable.","ariaText_hint_cantTell":"Eliminar role=\"text\" (o eliminar el descendiente enfocable); una región de \"texto sin formato\" no debería contener contenido enfocable.","focusOrderSemantics_title":"Los elementos agregados al orden de tabulación deberían tener semántica interactiva","focusOrderSemantics_description":"Señala elementos con tabindex >= 0 cuyo rol explícito es un rol estructural/documental no interactivo (por ejemplo, heading, list, region, presentation), para su revisión manual.","focusOrderSemantics_summary_cantTell":"Este elemento está en el orden de tabulación (tabindex=\"{{tabindex}}\") pero tiene un rol no interactivo (\"{{role}}\").","focusOrderSemantics_hint_cantTell":"Eliminar tabindex si este elemento no está pensado para ser interactivo, o usar un rol interactivo que coincida con su comportamiento real.","pAsHeading_title":"Un \u003cp> con estilo de encabezado probablemente debería ser un encabezado real","pAsHeading_description":"Señala elementos \u003cp> cortos cuyo texto completo está en negrita y se renderiza a >=18px, para su revisión manual sobre si debería usarse un elemento de encabezado real en su lugar.","pAsHeading_summary_cantTell":"Este párrafo está completamente en negrita y se renderiza con un tamaño similar al de un encabezado.","pAsHeading_hint_cantTell":"Si este texto introduce una nueva sección, usar un elemento de encabezado real (\u003ch1>-\u003ch6> o role=\"heading\") en lugar de dar a un párrafo el estilo de un encabezado.","tableFakeCaption_title":"La primera fila de una tabla no debería sustituir a un \u003ccaption> real","tableFakeCaption_description":"Señala tablas sin \u003ccaption> cuya primera fila tiene una única celda no vacía mientras que las demás filas tienen varias celdas, para su revisión manual sobre si esa celda actúa como un caption falso.","tableFakeCaption_summary_cantTell":"Esta tabla no tiene \u003ccaption>, pero su primera fila es una única celda situada sobre filas con varias celdas; puede estar actuando como un caption falso.","tableFakeCaption_hint_cantTell":"Si esta celda está pensada para describir la tabla, usar un elemento \u003ccaption> real en lugar de una única celda en la primera fila.","tdHasHeader_title":"Las celdas de datos en tablas grandes deben tener un encabezado asociado","tdHasHeader_description":"Comprueba que cada \u003ctd> en una tabla grande y simple (sin colspan/rowspan) tenga un encabezado asociado, ya sea mediante un atributo headers, un \u003cth> de columna implícito por encima de ella, o un \u003cth> de fila implícito a su izquierda.","tdHasHeader_summary_fail":"Esta celda de datos no tiene ningún encabezado asociado (sin atributo headers, sin \u003cth> de columna por encima, sin \u003cth> de fila a la izquierda).","tdHasHeader_hint_fail":"Agregar un atributo headers que referencie el/los id de \u003cth> correspondiente(s), o reestructurar la tabla para que esta celda tenga un encabezado de fila/columna implícito.","mouseOnlyEventHandlers_title":"Los controladores de eventos en línea exclusivos de puntero deberían tener un equivalente alcanzable por teclado","mouseOnlyEventHandlers_description":"Señala elementos con un controlador de eventos en línea exclusivo de puntero (onmouseover, onmouseout, onmousedown, onmouseup, ondblclick, onmousemove, onmouseenter, onmouseleave) y sin un controlador equivalente alcanzable por teclado (onkeydown/onkeyup/onkeypress/onfocus/onblur), para su revisión manual.","mouseOnlyEventHandlers_summary_cantTell":"Este elemento tiene {{attrs}} pero ningún controlador equivalente alcanzable por teclado.","mouseOnlyEventHandlers_hint_cantTell":"Agregar onkeydown/onkeyup/onkeypress (o onfocus/onblur para comportamiento activado por hover) para que esta funcionalidad también sea alcanzable por teclado.","linkNameQuality_title":"El texto del enlace debe ser descriptivo, no genérico","linkNameQuality_description":"Señala enlaces cuyo nombre accesible completo es una frase no descriptiva conocida (por ejemplo, \"haz clic aquí\", \"leer más\", \"más\"), para su revisión manual sobre si el propósito queda claro sin contexto adicional.","linkNameQuality_summary_cantTell":"El nombre accesible de este enlace (\"{{name}}\") es una frase genérica y no descriptiva.","linkNameQuality_hint_cantTell":"Hacer que el propio texto del enlace describa su destino/propósito (por ejemplo, \"Descargar la guía de precios 2026\" en lugar de \"Descargar\"), o confirmar que el contexto circundante ya deja claro el propósito."});
|
|
21
|
+
global.a11ycore.registerMessages("es", {"img_altPresent_title":"\u003cimg> debe tener un atributo alt","img_altPresent_description":"Comprueba que los elementos \u003cimg> incluyan un atributo alt para ofrecer un mecanismo de alternativa textual.","img_altPresent_summary_fail":"Falta el atributo alt en \u003cimg>.","img_altPresent_hint_fail":"Agregar un atributo alt (usar alt=\"\" solo para imágenes decorativas).","area_altPresent_title":"\u003carea> debe tener un atributo alt","area_altPresent_description":"Comprueba que los elementos \u003carea> incluyan un atributo alt para ofrecer un mecanismo de alternativa textual.","area_altPresent_summary_fail":"Falta el atributo alt en \u003carea>.","area_altPresent_hint_fail":"Agregar un atributo alt (usar alt=\"\" solo para áreas decorativas).","inputImage_altPresent_title":"\u003cinput type=\"image\"> debe tener un atributo alt","inputImage_altPresent_description":"Comprueba que los elementos \u003cinput type=\"image\"> incluyan un atributo alt para ofrecer un mecanismo de alternativa textual.","inputImage_altPresent_summary_fail":"Falta el atributo alt en \u003cinput type=\"image\">.","inputImage_altPresent_hint_fail":"Agregar un atributo alt (usar alt=\"\" solo cuando se proporcione un nombre accesible por separado).","inputImage_altPresent_summary_defaultName":"El nombre accesible es el predeterminado del navegador para un botón de imagen y no aporta información.","inputImage_altPresent_hint_defaultName":"Sustituirlo por un texto que describa la acción del botón, por ejemplo \"Buscar\".","inputImage_altPresent_summary_emptyAlt":"Un alt=\"\" vacío en \u003cinput type=\"image\"> deja el control sin nombre.","inputImage_altPresent_hint_emptyAlt":"Describir la acción en alt, o nombrar el control con aria-label o aria-labelledby.","ariaHidden_programmaticFocus_review_title":"Revisar el foco programático en aria-hidden","ariaHidden_programmaticFocus_review_description":"Señala elementos aria-hidden considerados elegibles debido a un foco programático (por ejemplo, tabindex \u003c 0). Verificar que la gestión del foco es intencionada y la exposición a las tecnologías de asistencia.","ariaHidden_programmaticFocus_review_summary":"Revisión: un elemento aria-hidden es enfocable de forma programática.","ariaHidden_programmaticFocus_review_hint":"Comprobar que la gestión del foco es intencionada y que el elemento debe permanecer oculto para las tecnologías de asistencia.","canvas_textAltPresent_title":"\u003ccanvas> debe proporcionar una alternativa textual","canvas_textAltPresent_description":"Comprueba que los elementos \u003ccanvas> proporcionen una alternativa textual mediante contenido de reserva o un nombre accesible.","canvas_textAltPresent_summary_fail":"Falta la alternativa textual para \u003ccanvas>.","canvas_textAltPresent_hint_fail":"Proporcionar texto de reserva dentro de \u003ccanvas> o un nombre accesible (por ejemplo, aria-label/aria-labelledby).","svg_textAltPresent_title":"\u003csvg> debe proporcionar una alternativa textual","svg_textAltPresent_description":"Comprueba que los elementos \u003csvg> en línea proporcionen una alternativa textual mediante un elemento \u003ctitle> o un nombre ARIA (un elemento \u003cdesc> por sí solo no cuenta).","svg_textAltPresent_summary_fail":"Falta la alternativa textual para \u003csvg>.","svg_textAltPresent_hint_fail":"Proporcionar un elemento \u003ctitle> con texto, o un nombre ARIA (aria-label/aria-labelledby); un elemento \u003cdesc> por sí solo no proporciona un nombre accesible.","object_textAltPresent_title":"\u003cobject> debe proporcionar una alternativa textual","object_textAltPresent_description":"Comprueba que los elementos \u003cobject> proporcionen una alternativa textual mediante contenido de reserva o un nombre accesible.","object_textAltPresent_summary_fail":"Falta la alternativa textual para \u003cobject>.","object_textAltPresent_hint_fail":"Proporcionar contenido de reserva significativo dentro de \u003cobject>, agregar un nombre accesible (aria-label/aria-labelledby), o usar un atributo title como alternativa de último recurso.","embed_textAltPresent_title":"\u003cembed> debe proporcionar una alternativa textual","embed_textAltPresent_description":"Comprueba que los elementos \u003cembed> proporcionen una alternativa textual mediante un nombre accesible.","embed_textAltPresent_summary_fail":"Falta la alternativa textual para \u003cembed>.","embed_textAltPresent_hint_fail":"Agregar un nombre accesible a \u003cembed> (se prefiere aria-label/aria-labelledby, o un atributo title como alternativa de último recurso).","img_altQuality_title":"El texto alt de \u003cimg> debe ser apropiado (revisión manual)","img_altQuality_description":"Señala elementos \u003cimg> con texto alt no vacío para su revisión manual en cuanto a idoneidad.","img_altQuality_summary_cantTell":"Revisar el texto alt de \u003cimg> en cuanto a exactitud e idoneidad.","img_altQuality_hint_cantTell":"Asegurarse de que el texto alt transmita el propósito o la información de la imagen en su contexto (que no sea redundante ni parezca un nombre de archivo).","img_altDecorative_title":"Los \u003cimg>/\u003ccanvas>/\u003csvg> excluidos deben ser decorativos (revisión manual)","img_altDecorative_description":"Señala elementos \u003cimg>, \u003ccanvas> y \u003csvg> excluidos del árbol de accesibilidad (aria-hidden, role=\"none\"/\"presentation\", alt vacío, o un svg/canvas sin etiqueta) para su revisión manual de que son puramente decorativos.","img_altDecorative_summary_cantTell":"Revisar si este \u003c{{element}}> es decorativo.","img_altDecorative_hint_cantTell":"Confirmar que el elemento es puramente decorativo. Si transmite información o función, darle un texto alternativo real (o un nombre accesible) en lugar de excluirlo.","area_altQuality_title":"El texto alt de \u003carea> debe ser apropiado (revisión manual)","area_altQuality_description":"Señala elementos \u003carea> con texto alt no vacío para su revisión manual en cuanto a idoneidad.","area_altQuality_summary_cantTell":"Revisar el texto alt de \u003carea> en cuanto a exactitud e idoneidad.","area_altQuality_hint_cantTell":"Asegurarse de que el texto alt identifique el destino o la acción del área del mapa de imagen en su contexto.","area_altDecorative_title":"\u003carea> con alt=\"\" debe ser decorativa (revisión manual)","area_altDecorative_description":"Señala elementos \u003carea> con alt vacío para su revisión manual de que son decorativos o no informativos.","area_altDecorative_summary_cantTell":"Revisar si \u003carea> es decorativa (alt=\"\").","area_altDecorative_hint_cantTell":"Confirmar que el área no transmite información ni función. Si es interactiva o significativa, proporcionar un texto alt significativo.","inputImage_altQuality_title":"El texto alt de \u003cinput type=\"image\"> debe ser apropiado (revisión manual)","inputImage_altQuality_description":"Señala elementos \u003cinput type=\"image\"> con texto alt no vacío para su revisión manual en cuanto a idoneidad.","inputImage_altQuality_summary_cantTell":"Revisar el texto alt de \u003cinput type=\"image\"> en cuanto a exactitud e idoneidad.","inputImage_altQuality_hint_cantTell":"Asegurarse de que el texto alt describa la acción del control (por ejemplo, \"Buscar\", \"Enviar pedido\") en su contexto.","inputImage_altDecorative_title":"\u003cinput type=\"image\"> con alt=\"\" debe ser apropiado (revisión manual)","inputImage_altDecorative_description":"Señala elementos \u003cinput type=\"image\"> con alt vacío para su revisión manual (normalmente no es apropiado para controles funcionales).","inputImage_altDecorative_summary_cantTell":"Revisar \u003cinput type=\"image\"> con alt=\"\".","inputImage_altDecorative_hint_cantTell":"Este control suele ser funcional. Confirmar que tiene un nombre accesible equivalente en otro lugar, o proporcionar un texto alt significativo.","canvas_textAltQuality_title":"La alternativa textual de \u003ccanvas> debe ser apropiada (revisión manual)","canvas_textAltQuality_description":"Señala elementos \u003ccanvas> con una alternativa textual detectada para su revisión manual en cuanto a equivalencia e idoneidad.","canvas_textAltQuality_summary_cantTell":"Revisar la alternativa textual de \u003ccanvas> en cuanto a equivalencia e idoneidad.","canvas_textAltQuality_hint_cantTell":"Confirmar que el texto de reserva o el nombre accesible transmite la misma información o función que el contenido del canvas.","svg_textAltQuality_title":"La alternativa textual de \u003csvg> debe ser apropiada (revisión manual)","svg_textAltQuality_description":"Señala gráficos \u003csvg> aplicables con una alternativa textual detectada para su revisión manual en cuanto a idoneidad.","svg_textAltQuality_summary_cantTell":"Revisar la alternativa textual de \u003csvg> en cuanto a exactitud e idoneidad.","svg_textAltQuality_hint_cantTell":"Confirmar que el \u003ctitle>/\u003cdesc> o el nombre ARIA transmite el significado o propósito del gráfico en su contexto.","object_textAltQuality_title":"La alternativa textual de \u003cobject> debe ser apropiada (revisión manual)","object_textAltQuality_description":"Señala elementos \u003cobject> con contenido de reserva o nombre detectados para su revisión manual en cuanto a equivalencia e idoneidad.","object_textAltQuality_summary_cantTell":"Revisar la alternativa textual de \u003cobject> en cuanto a equivalencia e idoneidad.","object_textAltQuality_hint_cantTell":"Confirmar que el contenido de reserva o el nombre ARIA proporciona una alternativa equivalente para el contenido incrustado.","embed_textAltQuality_title":"La alternativa textual de \u003cembed> debe ser apropiada (revisión manual)","embed_textAltQuality_description":"Señala elementos \u003cembed> con un nombre detectado para su revisión manual en cuanto a idoneidad.","embed_textAltQuality_summary_cantTell":"Revisar la alternativa textual de \u003cembed> en cuanto a exactitud e idoneidad.","embed_textAltQuality_hint_cantTell":"Confirmar que el nombre ARIA o el title identifica con precisión el contenido incrustado en su contexto.","videoPoster_textAltPresent_title":"El póster de \u003cvideo> debe tener una alternativa textual","videoPoster_textAltPresent_description":"Comprueba que los elementos \u003cvideo> con una imagen de póster proporcionen una alternativa textual (nombre accesible).","videoPoster_textAltPresent_summary_fail":"Falta la alternativa textual para el póster de \u003cvideo>.","videoPoster_textAltPresent_hint_fail":"Proporcionar un nombre accesible para la imagen del póster (se prefiere aria-label/aria-labelledby, o un atributo title como alternativa de reserva).","svgImage_textAltPresent_title":"El elemento \u003cimage> de SVG debe tener una alternativa textual","svgImage_textAltPresent_description":"Comprueba que los elementos \u003cimage> de SVG proporcionen una alternativa textual mediante \u003ctitle>/\u003cdesc> o un nombre accesible ARIA.","svgImage_textAltPresent_summary_fail":"Falta la alternativa textual en el \u003cimage> de SVG.","svgImage_textAltPresent_hint_fail":"Agregar un \u003ctitle> (y opcionalmente un \u003cdesc>) dentro de \u003cimage>, o proporcionar aria-label/aria-labelledby.","formControl_programmaticLabelPresent_title":"Los controles de formulario deben tener una etiqueta programática","formControl_programmaticLabelPresent_description":"Comprueba que los controles de formulario tengan una etiqueta programática mediante \u003clabel>, aria-label, aria-labelledby, title o placeholder.","formControl_programmaticLabelPresent_summary_fail":"Al control de formulario le falta una etiqueta programática.","formControl_programmaticLabelPresent_hint_fail":"Proporcionar una asociación \u003clabel>, aria-label o aria-labelledby (placeholder/title no cuentan como etiquetas).","formControlAccessibleName_description":"Falla cuando un control de formulario aplicable no tiene nombre accesible (por ejemplo, label, aria-label, aria-labelledby).","formControlAccessibleName_hint_fail":"Proporcionar un nombre accesible mediante un \u003clabel>, aria-label o aria-labelledby.","formControlAccessibleName_summary_fail":"El control de formulario no tiene nombre accesible.","formControlAccessibleName_title":"Los controles de formulario deben tener un nombre accesible","linksTargetBlankNoopener_description":"Garantiza que los enlaces con target=\"_blank\" mitiguen los riesgos de reverse tabnabbing.","linksTargetBlankNoopener_hint_cantTell":"Consultar las indicaciones para esta regla.","linksTargetBlankNoopener_summary_cantTell":"Los enlaces que se abren en una nueva pestaña deben usar rel=\"noopener\"","linksTargetBlankNoopener_title":"Los enlaces que se abren en una nueva pestaña deben usar rel=\"noopener\"","manualReview_description":"Señala que se requiere una revisión manual de la navegación por teclado y el orden del foco.","manualReview_hint_cantTell":"Consultar las indicaciones para esta regla.","manualReview_summary_cantTell":"Revisión manual: navegación por teclado y orden del foco","manualReview_title":"Revisión manual: navegación por teclado y orden del foco","rules.img-alt-suspicious.meta.title":"El texto alt sospechoso requiere verificación","rules.img-alt-suspicious.meta.description":"Identifica imágenes cuyo texto alt coincide con patrones sospechosos comunes (como nombres de archivo, URL, marcadores de posición o términos genéricos) y requiere verificación manual.","rules.img-alt-suspicious.occurrence.cantTell.summary":"El texto alt de la imagen parece sospechoso (\"{{alt}}\" parece {{pattern}}) y requiere verificación.","rules.img-alt-suspicious.occurrence.cantTell.hint":"Revisar el texto alt. Evitar nombres de archivo, URL, marcadores de posición o términos genéricos, y asegurarse de que la alternativa textual describa el propósito o la función de la imagen en su contexto.","formControlLabelQuality_title":"Las etiquetas de los campos de formulario deben ser descriptivas y distinguibles","formControlLabelQuality_description":"Señala una etiqueta visible de campo que es un marcador de posición («Etiqueta», «Campo») o que repite la etiqueta de otro campo sin que ningún contexto visible —encabezado, leyenda o fila— los distinga.","formControlLabelQuality_summary_cantTell_placeholder":"La etiqueta visible de este campo («{{label}}») es un marcador de posición y no describe para qué sirve el campo.","formControlLabelQuality_summary_cantTell_duplicate":"La etiqueta visible de este campo («{{label}}») se comparte con {{count}} campo(s) más, sin que ningún encabezado, leyenda o texto de fila visible los distinga.","formControlLabelQuality_hint_cantTell_placeholder":"Sustituir la etiqueta por una que nombre la información que recoge el campo.","formControlLabelQuality_summary_cantTell_partiallyHidden":"La etiqueta de este campo está dividida: se muestra «{{label}}», mientras que {{hiddenCount}} parte(s) más de la etiqueta quedan ocultas a la vista.","formControlLabelQuality_hint_cantTell_partiallyHidden":"Comprobar que la parte visible por sí sola identifica el campo, o hacer visible el resto de la etiqueta.","formControlLabelQuality_hint_cantTell_duplicate":"Dar a cada campo una etiqueta propia, o llevar a la pantalla el contexto que los distingue: un encabezado visible o una leyenda de fieldset sobre cada grupo.","formControl_programmaticLabelQuality_title":"Los controles de formulario no deben depender de placeholder o title como etiqueta principal","formControl_programmaticLabelQuality_description":"Señala controles de formulario cuyo nombre accesible calculado depende de placeholder o title como método de etiquetado principal. Se prefiere \u003clabel> o aria-labelledby.","formControl_programmaticLabelQuality_summary_cantTell":"La etiqueta principal del control de formulario proviene de {{method}}.","formControl_programmaticLabelQuality_hint_cantTell":"Preferir un \u003clabel> persistente o aria-labelledby. Evitar depender de placeholder/title como etiqueta principal.","html_lang_attr_title":"El idioma de la página está declarado","html_lang_attr_description":"Comprueba que el idioma predeterminado de la página esté declarado de forma programática.","html_lang_attr_missing_absent":"El idioma predeterminado de la página no está declarado.","html_lang_attr_hint_missing_absent":"Agregar un atributo lang al elemento \u003chtml> (por ejemplo: \u003chtml lang=\"en\">).","html_lang_attr_missing_empty":"El idioma predeterminado de la página está declarado pero vacío.","html_lang_attr_hint_missing_empty":"Establecer un valor de idioma válido en el atributo lang del elemento \u003chtml> (por ejemplo: \u003chtml lang=\"en\">).","html_lang_attr_invalid":"El idioma predeterminado de la página está declarado, pero el valor \"{{lang}}\" no es una etiqueta de idioma válida.","html_lang_attr_hint_invalid":"Usar una etiqueta de idioma BCP 47 válida en \u003chtml lang=\"…\"> (por ejemplo: \"en\", \"fr\", \"en-US\").","mediaTranscriptPresent_title":"Medios basados en tiempo: evidencia de transcripción o alternativa textual","mediaTranscriptPresent_description":"Encuentra elementos de audio y video en los que no hay evidencia sólida de una transcripción u otra alternativa textual en el contenido de la página. Esta regla es conservadora e informa revisión manual cuando falta evidencia o no se puede verificar.","mediaTranscriptPresent_summary_cantTell_missing":"No se demuestra claramente en el contenido de la página la presencia de una transcripción u otra alternativa textual para este \u003c{{element}}>.","mediaTranscriptPresent_hint_cantTell_missing":"Proporcionar una transcripción claramente identificada u otra alternativa textual para medios de solo audio o solo video pregrabados, por ejemplo una sección o enlace visible de \"Transcripción\".","mediaTranscriptPresent_summary_cantTell_unverified":"Puede haber disponible una transcripción u otra alternativa textual para este medio basado en tiempo, pero no se pudo verificar a partir del contenido de la página.","mediaTranscriptPresent_hint_cantTell_unverified":"Asegurarse de que una transcripción claramente identificada u otra alternativa textual esté disponible y asociada visible o programáticamente con el medio en la página.","pageTitlePresent_title":"La página tiene un título no vacío","pageTitlePresent_description":"Comprueba que la página incluya un elemento \u003ctitle> no vacío.","pageTitlePresent_summary_fail":"La página no tiene un título no vacío.","pageTitlePresent_hint_fail":"Agregar un elemento \u003ctitle> con texto que describa el tema o propósito de la página.","pageTitlePatterns_title":"Patrones de título de página que pueden ser poco descriptivos","pageTitlePatterns_description":"Identifica patrones de título de página que pueden indicar baja descriptividad, como títulos genéricos, duplicados o excesivamente basados en plantillas. Esta regla ofrece señales de revisión y no falla automáticamente.","pageTitlePatterns_summary_cantTell":"Es posible que el título de la página no sea lo bastante descriptivo para identificar su tema o propósito.","pageTitlePresent_summary_fail_missing":"A la página le falta un elemento \u003ctitle>.","pageTitlePresent_summary_fail_empty":"La página tiene un \u003ctitle> vacío.","pageTitlePatterns_summary_cantTell_duplicateAcrossPages":"Varias páginas comparten el mismo título, lo que puede dificultar distinguirlas ({{duplicateGroups}} grupos duplicados en {{pagesAnalyzed}} páginas). Ejemplo: \"{{exampleTitle}}\".","pageTitlePatterns_summary_cantTell_templatedAcrossPages":"Muchos títulos de página parecen muy basados en plantillas, lo que puede reducir su capacidad de distinguir páginas ({{pagesAnalyzed}} páginas).","pageTitlePatterns_summary_cantTell_generic":"El título de la página es genérico y puede no identificar su tema o propósito.","pageTitlePatterns_summary_cantTell_veryShort":"El título de la página es muy corto y puede no identificar su tema o propósito.","pageTitlePatterns_summary_cantTell_templateLike":"El título de la página parece basado en una plantilla y puede no identificar su tema o propósito.","pageTitlePatterns_hint_cantTell":"Revisar el título de la página y asegurarse de que identifique claramente su tema o propósito y ayude a distinguirla de otras.","contrastComputable_title":"El contraste de color es computable para el texto renderizado","contrastComputable_description":"Determina si hay suficiente información disponible para calcular el contraste de color WCAG del texto visible (por ejemplo, sin degradados/imágenes/modos de fusión que hagan indeterminado el fondo).","contrastComputable_pass_allComputable":"El contraste es computable para todo el texto elegible ({{eligibleTextCount}} nodo(s) de texto).","contrastComputable_cantTell_generic":"Es posible que el contraste no sea computable ({{reasonCode}}).","contrastComputable_cantTell_bgImageOrGradient":"El contraste no es computable porque el fondo usa una imagen o un degradado ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_bgImage":"El contraste no es computable porque el fondo usa una imagen ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_bgGradient":"El contraste no es computable porque el fondo usa un degradado ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_bgImageAndGradient":"El contraste no es computable porque el fondo usa una imagen y un degradado ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_mixBlendMode":"El contraste no es computable porque se usa mix-blend-mode ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_filter":"El contraste no es computable porque se usa filter/backdrop-filter ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_rootNotOpaque":"El contraste no es computable porque el fondo efectivo no es completamente opaco en la raíz (alpha={{backgroundAlpha}}).","contrastComputable_cantTell_foregroundUnparsable":"El contraste no es computable porque no se pudo analizar el color de primer plano calculado.","contrastComputable_cantTell_engineFailure":"No se pudo determinar la computabilidad del contraste debido a un error interno del motor ({{reasonCode}}).","contrastComputable_cantTell_backdropFilter":"El contraste no es computable porque se usa backdrop-filter ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_filterOrBackdropFilter":"El contraste no es computable porque se usa filter ({{blockerProperty}}={{blockerValue}}).","contrastComputable_cantTell_textShadow":"El contraste no es computable porque se usa text-shadow, que puede aportar contraste que este cálculo no tiene en cuenta ({{blockerProperty}}={{blockerValue}}).","contrastMinimum_title":"El texto cumple el contraste de color mínimo (AA)","contrastMinimum_description":"Comprueba que el texto visible tenga una relación de contraste de al menos 4.5:1 (normal) o 3:1 (grande), cuando el contraste es computable a partir de CSS.","contrastMinimum_fail_belowThreshold":"El elemento tiene un contraste de color insuficiente de {{ratio}}:1 (primer plano: {{foregroundHex}}, fondo: {{backgroundHex}}, tamaño de fuente: {{fontSizePx}}px, grosor de fuente: {{fontWeightLabel}}). Se esperaba una relación de contraste de {{threshold}}:1 ({{#isLargeText}}texto grande{{/isLargeText}}{{^isLargeText}}texto normal{{/isLargeText}}).","contrastMinimum_pass_allAboveThreshold":"Todo el texto computable cumple el contraste mínimo (AA). Nodos de texto elegibles: {{eligibleTextCount}}. Computables: {{computableTextCount}}.","contrastMinimum_notApplicable_noComputableText":"Ningún texto elegible tuvo contraste computable (nodos de texto elegibles: {{eligibleTextCount}}). Consultar la regla de computabilidad de contraste para más información.","contrastMinimum_cantTell_engineFailure":"No se pudo determinar el contraste mínimo (AA) debido a un error interno del motor ({{reasonCode}}).","contrastEnhanced_title":"El texto cumple el contraste de color mejorado (AAA)","contrastEnhanced_description":"Comprueba que el texto visible tenga una relación de contraste de al menos 7:1 (normal) o 4.5:1 (grande), cuando el contraste es computable a partir de CSS.","contrastEnhanced_fail_belowThreshold":"El elemento tiene un contraste de color insuficiente (AAA) de {{ratio}}:1 (primer plano: {{foregroundHex}}, fondo: {{backgroundHex}}, tamaño de fuente: {{fontSizePx}}px, grosor de fuente: {{fontWeightLabel}}). Se esperaba una relación de contraste de {{threshold}}:1 ({{#isLargeText}}texto grande{{/isLargeText}}{{^isLargeText}}texto normal{{/isLargeText}}).","contrastEnhanced_pass_allAboveThreshold":"Todo el texto computable cumple el contraste mejorado (AAA). Nodos de texto elegibles: {{eligibleTextCount}}. Computables: {{computableTextCount}}.","contrastEnhanced_notApplicable_noComputableText":"Ningún texto elegible tuvo contraste computable (nodos de texto elegibles: {{eligibleTextCount}}). Consultar la regla de computabilidad de contraste para más información.","contrastEnhanced_cantTell_engineFailure":"No se pudo determinar el contraste mejorado (AAA) debido a un error interno del motor ({{reasonCode}}).","dom_textContrastMinimum_title":"El texto debe tener contraste suficiente (mínimo)","dom_textContrastMinimum_description":"Comprueba el contraste del texto visible contra su fondo calculado según el criterio de éxito 1.4.3 (AA) de WCAG 2.2, usando los estilos renderizados (tamaño/grosor de fuente) para determinar la relación requerida.","dom_textContrastMinimum_summary_fail":"Contraste de texto insuficiente: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} sobre fondo {{bgColor}}. Fuente {{fontSizePx}}px, grosor {{fontWeight}}{{#isBold}}, negrita{{/isBold}}{{#isLargeText}} (texto grande){{/isLargeText}}.","dom_textContrastMinimum_hint_fail":"Ajustar el color de primer plano o de fondo para que la relación de contraste sea de al menos {{requiredRatio}}:1 para este tamaño/grosor de texto.","dom_textContrastMinimum_summary_pass":"Contraste de texto correcto: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} sobre fondo {{bgColor}}. Fuente {{fontSizePx}}px, grosor {{fontWeight}}{{#isBold}}, negrita{{/isBold}}{{#isLargeText}} (texto grande){{/isLargeText}}.","dom_textContrastMinimum_summary_cantTell":"No se pudo calcular de forma fiable el contraste del texto porque el fondo efectivo no se puede resolver de forma determinista (por ejemplo, imagen, degradado, video, canvas, transparencia compleja o fusión de capas).","dom_textContrastMinimum_hint_cantTell":"Verificar manualmente el contraste donde el texto se superpone a imágenes/degradados/transparencias; asegurarse de que cumpla {{requiredRatio}}:1 para el tamaño/grosor de texto calculado.","dom_textContrastEnhanced_title":"El texto debe tener contraste suficiente (mejorado)","dom_textContrastEnhanced_description":"Comprueba el contraste del texto visible contra su fondo calculado según el criterio de éxito 1.4.6 (AAA) de WCAG 2.2, usando los estilos renderizados (tamaño/grosor de fuente) para determinar la relación requerida.","dom_textContrastEnhanced_summary_fail":"Contraste de texto mejorado insuficiente: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} sobre fondo {{bgColor}}. Fuente {{fontSizePx}}px, grosor {{fontWeight}}{{#isBold}}, negrita{{/isBold}}{{#isLargeText}} (texto grande){{/isLargeText}}.","dom_textContrastEnhanced_hint_fail":"Ajustar el color de primer plano o de fondo para que la relación de contraste sea de al menos {{requiredRatio}}:1 para el contraste mejorado (AAA).","dom_textContrastEnhanced_summary_pass":"Contraste de texto mejorado correcto: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} sobre fondo {{bgColor}}. Fuente {{fontSizePx}}px, grosor {{fontWeight}}{{#isBold}}, negrita{{/isBold}}{{#isLargeText}} (texto grande){{/isLargeText}}.","dom_textContrastEnhanced_summary_cantTell":"No se pudo calcular de forma fiable el contraste de texto mejorado porque el fondo efectivo no se puede resolver de forma determinista (por ejemplo, imagen, degradado, video, canvas, transparencia compleja o fusión de capas).","dom_textContrastEnhanced_hint_cantTell":"Verificar manualmente el contraste mejorado (AAA) donde el texto se superpone a imágenes/degradados/transparencias; asegurarse de que cumpla {{requiredRatio}}:1 para el tamaño/grosor de texto calculado.","dom_nonTextContrast_title":"Los componentes de interfaz y los gráficos deben tener contraste suficiente","dom_nonTextContrast_description":"Comprueba el contraste de información visual no textual (límites y estados de componentes de interfaz, y objetos gráficos significativos) según el criterio de éxito 1.4.11 (AA) de WCAG 2.2.","dom_nonTextContrast_summary_fail":"Contraste no textual insuficiente: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} contra fondo {{bgColor}}. Componente: {{componentKind}}{{#componentState}} (estado: {{componentState}}){{/componentState}}.","dom_nonTextContrast_hint_fail":"Ajustar los colores del componente o gráfico para que la relación de contraste sea de al menos {{requiredRatio}}:1 para el límite perceptible o la información visual esencial.","dom_nonTextContrast_summary_pass":"Contraste no textual correcto: {{contrastRatio}}:1 (requerido {{requiredRatio}}:1). Primer plano {{fgColor}} contra fondo {{bgColor}}. Componente: {{componentKind}}{{#componentState}} (estado: {{componentState}}){{/componentState}}.","dom_nonTextContrast_summary_cantTell":"No se pudo calcular de forma fiable el contraste no textual porque el fondo efectivo o los píxeles pintados no se pueden resolver de forma determinista (por ejemplo, imagen/degradado/video/canvas, transparencia compleja o fusión de capas).","dom_nonTextContrast_hint_cantTell":"Verificar manualmente el contraste del componente o gráfico contra los colores adyacentes; asegurarse de que cumpla {{requiredRatio}}:1 para la información visual no textual esencial.","contrastEnhanced_pass_allTextMeetsThreshold":"Todo el texto computable cumple el contraste mejorado (AAA).","contrastMinimum_pass_allTextMeetsThreshold":"Todo el texto computable cumple el contraste mínimo (AA).","contrastComputable_cantTell_notComputable":"No se pudo calcular el contraste para este texto ({{reasonCode}}).","roleImg_textAlternativePresent_title":"Los elementos con role=\"img\"/\"graphics-symbol\"/\"graphics-document\" deben tener una alternativa textual accesible","roleImg_textAlternativePresent_description":"Comprueba que los elementos con role=\"img\", \"graphics-symbol\" o \"graphics-document\" proporcionen una alternativa textual accesible mediante aria-label, aria-labelledby, un atributo title o (en elementos SVG) un primer hijo \u003ctitle>.","roleImg_textAlternativePresent_summary_fail":"El elemento con role=\"{{role}}\" no tiene una alternativa textual accesible.","roleImg_textAlternativePresent_hint_fail":"Proporcionar una alternativa textual mediante aria-label, o aria-labelledby que haga referencia a texto no vacío.","targetSizeMinimum_title":"Los objetivos de puntero deben tener al menos 24x24px de tamaño, o dejar suficiente distancia respecto a otros objetivos","targetSizeMinimum_description":"Comprueba que los objetivos operables por puntero tengan una zona de contacto efectiva de al menos 24 por 24 píxeles CSS, o cumplan una excepción permitida (por ejemplo, espaciado suficiente).","targetSizeMinimum_summary_fail":"Uno o más objetivos de puntero son más pequeños que 24×24 px CSS y están demasiado cerca de otro objetivo.","targetSizeMinimum_hint_fail":"Aumentar el tamaño del objetivo a al menos 24×24 px CSS o agregar suficiente espaciado respecto a los objetivos vecinos.","targetSizeMinimum_summary_cantTell_ambiguousSpacing":"El objetivo puede ser demasiado pequeño y estar demasiado cerca de otro objetivo, pero la superposición está cerca del umbral de detección y no se pudo medir con confianza.","targetSizeMinimum_hint_cantTell_ambiguousSpacing":"Verificar manualmente el espaciado efectivo entre este objetivo y su vecino; aumentar el tamaño del objetivo o el espaciado si la superposición es real.","targetSizeMinimum_summary_cantTell_plausiblyEssential":"El objetivo es demasiado pequeño y está demasiado cerca de otro objetivo, pero puede estar exento por formar parte de un gráfico esencial o una región de mapa de imagen.","targetSizeMinimum_hint_cantTell_plausiblyEssential":"Verificar si el tamaño de este objetivo es realmente esencial para su función (por ejemplo, parte de un SVG/canvas/mapa de imagen); si no lo es, aumentar el tamaño del objetivo o el espaciado.","targetSizeMinimum_summary_cantTell_inlineLinkRun":"El objetivo es más pequeño que 24×24 px CSS y está cerca de otro enlace en línea dentro del mismo texto, donde puede aplicarse la excepción de contenido en línea.","targetSizeMinimum_hint_cantTell_inlineLinkRun":"Confirmar si estos enlaces forman parte de un texto en línea (que está exento); de lo contrario, aumentar el tamaño del objetivo a al menos 24×24 px CSS o agregar espaciado.","targetSizeMinimum_notApplicable_noTargets":"Ningún objetivo operable por puntero era elegible para la evaluación.","targetSizeMinimum_pass_allOk":"Todos los objetivos de puntero elegibles cumplen el tamaño mínimo o una excepción permitida.","ariaHidden_focus_title":"Los elementos ocultos con ARIA no deben ser enfocables","ariaHidden_focus_description":"Comprueba que los elementos con aria-hidden=\"true\" no sean enfocables ni contengan descendientes enfocables.","ariaHidden_focus_summary_fail_desc":"El elemento aria-hidden {{element}} contiene {{focusableCount}} elemento(s) enfocable(s).","ariaHidden_focus_summary_fail_self":"El elemento aria-hidden {{element}} es enfocable ({{focusableCount}} elemento(s) enfocable(s)).","ariaHidden_focus_summary_fail_self_and_desc":"El elemento aria-hidden {{element}} es enfocable y contiene {{descendantFocusableCount}} descendiente(s) enfocable(s) ({{focusableCount}} elemento(s) enfocable(s) en total).","ariaHidden_focus_hint_fail":"Eliminar la capacidad de enfoque de los descendientes o eliminar aria-hidden; asegurarse de que el orden de foco y el árbol de accesibilidad permanezcan alineados.","ariaHidden_focus_summary_cantTell_redirect":"El elemento aria-hidden {{element}} recibió el foco, pero el foco se movió de inmediato a otro elemento. Verificar el comportamiento de centinela/trampa de foco.","ariaHidden_focus_hint_cantTell_redirect":"Verificar que se trate de un traspaso intencionado de centinela/trampa de foco y que los usuarios de teclado nunca queden en objetivos de foco ocultos.","ariaHidden_focus_summary_cantTell_modal":"El elemento aria-hidden {{element}} contiene {{focusableCount}} elemento(s) enfocable(s) mientras hay un diálogo modal abierto. Si el modal mantiene atrapado el foco del teclado, pueden ser inalcanzables; verificar que el foco no pueda posarse en ellos.","ariaHidden_focus_hint_cantTell_modal":"Parece que hay un diálogo modal abierto. Es preferible volver inerte el fondo (o usar un \u003cdialog> nativo abierto con showModal()) para que salga del orden de tabulación, y luego verificar que el foco del teclado permanezca dentro del diálogo.","cssFocusIndicatorSuppressed_title":"El indicador de foco no debe eliminarse sin un reemplazo","cssFocusIndicatorSuppressed_description":"Señala elementos del orden de tabulación cuyo contorno de foco elimina una regla :focus/:focus-visible sin que ninguna otra regla de foco que les afecte dibuje un indicador de reemplazo (borde, sombra, fondo, …).","cssFocusIndicatorSuppressed_summary_cantTell":"Este elemento recibe una parada de tabulación y «{{selectors}}» elimina su contorno de foco sin que ninguna otra regla de foco que le afecte dibuje un indicador de reemplazo.","cssFocusIndicatorSuppressed_hint_cantTell":"Dibujar un indicador de reemplazo en la misma regla (un contorno visible, un borde, una sombra o un cambio de fondo), o no restablecer el contorno. Si el indicador se aplica desde script, confirmar que aparece para quien navega con teclado.","cssHidden_focus_title":"Los elementos enfocables no deben estar ocultos visualmente","cssHidden_focus_description":"Comprueba que los elementos enfocables por teclado no estén ocultos visualmente mediante técnicas CSS que puedan dejarlos en el orden de tabulación.","cssHidden_focus_summary_cantTell":"El elemento enfocable {{element}} está oculto visualmente ({{visibilityHints}}).","cssHidden_focus_hint_cantTell":"Hacer visible el elemento cuando pueda recibir foco de teclado, o eliminarlo del orden de tabulación hasta que sea visible.","linkNamePresent_title":"Los enlaces tienen un nombre accesible","linkNamePresent_description":"Comprueba que los enlaces expongan un nombre accesible no vacío.","linkNamePresent_summary_fail":"Este enlace no tiene nombre accesible.","linkNamePresent_hint_fail":"Proporcionar texto de enlace o un mecanismo de nombre accesible (por ejemplo, aria-label) para que las tecnologías de asistencia puedan identificar el enlace.","buttonNamePresent_title":"Los botones tienen un nombre accesible","buttonNamePresent_description":"Comprueba que los botones expongan un nombre accesible no vacío.","buttonNamePresent_summary_fail":"Este botón no tiene nombre accesible.","buttonNamePresent_hint_fail":"Proporcionar texto de botón visible o un mecanismo de nombre accesible programático (por ejemplo, aria-label) para que las tecnologías de asistencia puedan identificar el botón.","binaryControlNamePresent_title":"Los controles binarios tienen un nombre accesible","binaryControlNamePresent_description":"Comprueba que los controles de tipo casilla de verificación, botón de opción e interruptor expongan un nombre accesible no vacío.","binaryControlNamePresent_summary_fail":"Este control no tiene nombre accesible.","binaryControlNamePresent_hint_fail":"Proporcionar una etiqueta, aria-label, aria-labelledby, u otro mecanismo de nombre accesible para que las tecnologías de asistencia puedan identificar el control.","comboboxNamePresent_title":"Los cuadros combinados tienen un nombre accesible","comboboxNamePresent_description":"Comprueba que los elementos con role=\"combobox\" expongan un nombre accesible no vacío.","comboboxNamePresent_summary_fail":"Este cuadro combinado no tiene nombre accesible.","comboboxNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este cuadro combinado.","dialogNamePresent_title":"Los diálogos tienen un nombre accesible","dialogNamePresent_description":"Comprueba que los elementos con role=\"dialog\" o role=\"alertdialog\" expongan un nombre accesible no vacío.","dialogNamePresent_summary_fail":"Este diálogo no tiene nombre accesible.","dialogNamePresent_hint_fail":"Proporcionar aria-labelledby (preferido) o aria-label para que las tecnologías de asistencia puedan anunciar el diálogo.","menuitemNamePresent_title":"Los elementos de menú tienen un nombre accesible","menuitemNamePresent_description":"Comprueba que los elementos de menú (role=\"menuitem*\", incluidas las variantes casilla/opción) expongan un nombre accesible no vacío.","menuitemNamePresent_summary_fail":"Este elemento de menú no tiene nombre accesible.","menuitemNamePresent_hint_fail":"Proporcionar texto visible que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","tabNamePresent_title":"Las pestañas tienen un nombre accesible","tabNamePresent_description":"Comprueba que los elementos con role=\"tab\" expongan un nombre accesible no vacío.","tabNamePresent_summary_fail":"Esta pestaña no tiene nombre accesible.","tabNamePresent_hint_fail":"Proporcionar texto de pestaña que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","sliderNamePresent_title":"Los controles deslizantes tienen un nombre accesible","sliderNamePresent_description":"Comprueba que los controles deslizantes (input[type=\"range\"] y role=\"slider\") expongan un nombre accesible no vacío.","sliderNamePresent_summary_fail":"Este control deslizante no tiene nombre accesible.","sliderNamePresent_hint_fail":"Proporcionar una etiqueta, aria-label o aria-labelledby para que las tecnologías de asistencia puedan identificar el control deslizante.","textboxNamePresent_title":"Los cuadros de texto tienen un nombre accesible","textboxNamePresent_description":"Comprueba que los elementos con role=\"textbox\" expongan un nombre accesible no vacío.","textboxNamePresent_summary_fail":"Este cuadro de texto no tiene nombre accesible.","textboxNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este cuadro de texto.","searchboxNamePresent_title":"Los cuadros de búsqueda tienen un nombre accesible","searchboxNamePresent_description":"Comprueba que los elementos con role=\"searchbox\" expongan un nombre accesible no vacío.","searchboxNamePresent_summary_fail":"Este cuadro de búsqueda no tiene nombre accesible.","searchboxNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este cuadro de búsqueda.","spinbuttonNamePresent_title":"Los controles numéricos tienen un nombre accesible","spinbuttonNamePresent_description":"Comprueba que los elementos con role=\"spinbutton\" expongan un nombre accesible no vacío.","spinbuttonNamePresent_summary_fail":"Este control numérico no tiene nombre accesible.","spinbuttonNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este control numérico.","listboxNamePresent_title":"Los cuadros de lista tienen un nombre accesible","listboxNamePresent_description":"Comprueba que los elementos con role=\"listbox\" expongan un nombre accesible no vacío.","listboxNamePresent_summary_fail":"Este cuadro de lista no tiene nombre accesible.","listboxNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este cuadro de lista.","optionNamePresent_title":"Las opciones tienen un nombre accesible","optionNamePresent_description":"Comprueba que los elementos con role=\"option\" expongan un nombre accesible no vacío.","optionNamePresent_summary_fail":"Esta opción no tiene nombre accesible.","optionNamePresent_hint_fail":"Proporcionar texto de opción que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","treeitemNamePresent_title":"Los elementos de árbol tienen un nombre accesible","treeitemNamePresent_description":"Comprueba que los elementos con role=\"treeitem\" expongan un nombre accesible no vacío.","treeitemNamePresent_summary_fail":"Este elemento de árbol no tiene nombre accesible.","treeitemNamePresent_hint_fail":"Proporcionar texto de elemento de árbol que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","ariaRoleNamePresent_title":"Los roles ARIA que requieren un nombre accesible lo tienen","ariaRoleNamePresent_description":"Comprueba que los roles ARIA para los que WAI-ARIA exige un nombre accesible expongan uno no vacío.","ariaRoleNamePresent_summary_fail":"Este elemento no tiene nombre accesible.","ariaRoleNamePresent_hint_fail":"Proporcionar aria-label o aria-labelledby (preferido), o un atributo title no vacío.","composite_rollup_summary":"Resultado de regla compuesta: {{reasonCode}} ({{testCount}} comprobaciones)","catalog.rules.wcag_111_non_text_content.title":"Contenido no textual: alternativas textuales","catalog.rules.wcag_111_non_text_content.description":"Agrupación de comprobaciones que garantizan que el contenido no textual tenga una alternativa textual apropiada.","catalog.rules.wcag_121_prerecorded_transcript.title":"Solo audio y solo video (pregrabado): transcripción","catalog.rules.wcag_121_prerecorded_transcript.description":"Agrupación de comprobaciones sobre la disponibilidad de transcripción para medios pregrabados de solo audio o solo video.","catalog.rules.wcag_143_contrast_minimum.title":"Contraste: mínimo","catalog.rules.wcag_143_contrast_minimum.description":"Agrupación de comprobaciones del contraste mínimo del texto.","catalog.rules.wcag_146_contrast_enhanced.title":"Contraste: mejorado","catalog.rules.wcag_146_contrast_enhanced.description":"Agrupación de comprobaciones del contraste de texto mejorado.","catalog.rules.wcag_242_page_titled.title":"Página titulada","catalog.rules.wcag_242_page_titled.description":"Agrupación de comprobaciones que garantizan que los documentos tengan un título de página significativo.","catalog.rules.wcag_247_focus_visible.title":"Foco visible","catalog.rules.wcag_247_focus_visible.description":"Agrupación de comprobaciones que garantizan que el foco de teclado no esté oculto y siga siendo perceptible.","catalog.rules.wcag_258_target_size_minimum.title":"Tamaño del objetivo: mínimo","catalog.rules.wcag_258_target_size_minimum.description":"Agrupación de comprobaciones que garantizan que los objetivos de puntero cumplan los requisitos de tamaño mínimo.","catalog.rules.wcag_311_language_of_page.title":"Idioma de la página","catalog.rules.wcag_311_language_of_page.description":"Agrupación de comprobaciones que garantizan que el idioma de la página esté especificado.","catalog.rules.wcag_412_name.title":"Nombre, rol, valor: nombre accesible","catalog.rules.wcag_412_name.description":"Agrupación de comprobaciones que garantizan que los elementos interactivos comunes expongan un nombre accesible no vacío.","labelInName_title":"Etiqueta en el nombre: el nombre accesible contiene el texto visible","labelInName_description":"Comprueba que, cuando un control tiene una etiqueta de texto visible, el nombre accesible contenga ese texto de etiqueta visible (WCAG 2.5.3).","labelInName_summary_fail":"{{element}}: la etiqueta visible \"{{visibleLabel}}\" (de {{labelSource}}) no está incluida en el nombre accesible (de {{nameMechanism}}).","labelInName_hint_fail":"Actualizar aria-label/aria-labelledby (o el texto de la etiqueta visible) para que el nombre accesible incluya el texto de la etiqueta visible.","labelInName_summary_cantTell":"{{element}}: la etiqueta visible \"{{visibleLabel}}\" (de {{labelSource}}) se diferencia del nombre accesible (de {{nameMechanism}}) solo por una abreviatura o por la separación con guion.","labelInName_hint_cantTell":"Comprobar manualmente si ambas redacciones coinciden: el marcado no permite distinguir una abreviatura intencionada de una discrepancia.","labelInName_summary_cantTell_symbolic":"{{element}}: la etiqueta visible \"{{visibleLabel}}\" (de {{labelSource}}) puede representarse como un icono o símbolo en lugar de texto literal, por lo que puede no ser necesario que aparezca en el nombre accesible (de {{nameMechanism}}).","labelInName_hint_cantTell_symbolic":"Comprobar manualmente: si el texto visible se representa como un icono o símbolo, no es un error; si se representa como palabras literales, actualizar el nombre accesible para incluirlas.","ariaRolesValid_title":"El atributo role debe ser un rol ARIA válido y no abstracto","ariaRolesValid_description":"Comprueba que un atributo role=\"\" explícito se resuelva en un rol WAI-ARIA real y no abstracto.","ariaRolesValid_summary_invalid":"role=\"{{role}}\" no es un rol ARIA reconocido.","ariaRolesValid_hint_invalid":"Usar un token de rol ARIA válido, o eliminar el atributo role si no aplica ninguno.","ariaRolesValid_summary_abstract":"role=\"{{role}}\" es un rol ARIA abstracto, que no debe usarse directamente.","ariaRolesValid_hint_abstract":"Reemplazar este rol abstracto por un rol concreto adecuado para el widget o la estructura.","ariaDeprecatedRole_title":"El atributo role no debería usar un rol ARIA obsoleto o desaconsejado para autores","ariaDeprecatedRole_description":"Comprueba que un atributo role=\"\" explícito no use un rol obsoleto según la especificación WAI-ARIA, ni uno reservado para uso interno del agente de usuario (por ejemplo, role=\"generic\").","ariaDeprecatedRole_summary_fail":"Este elemento usa role=\"{{role}}\", que los autores no deben declarar explícitamente.","ariaDeprecatedRole_summary_cantTell":"Este elemento usa role=\"{{role}}\", que está obsoleto en WAI-ARIA (todavía válido, pero desaconsejado).","ariaDeprecatedRole_summary_cantTell_discouraged":"Este elemento usa role=\"{{role}}\", que está reservado para los agentes de usuario (todavía válido, pero desaconsejado).","ariaDeprecatedRole_guidance_directory":"Reemplazarlo por role=\"list\" (su reemplazo recomendado).","ariaDeprecatedRole_guidance_generic":"Eliminarlo: este rol está reservado para uso interno de los agentes de usuario, no para los autores. Usar en su lugar role=\"presentation\"/\"none\" para quitar la semántica, un rol semántico como \"group\" para expresar agrupación, o simplemente un elemento corriente (que ya lleva el rol generic implícito).","ariaDeprecatedRole_guidance_default":"Reemplazar el rol obsoleto por su reemplazo recomendado.","ariaValidAttr_title":"Los atributos aria-* deben ser atributos ARIA reales y definidos","ariaValidAttr_description":"Comprueba que cada nombre de atributo aria-* presente en el DOM sea un atributo real definido por la especificación WAI-ARIA.","ariaValidAttr_summary_fail":"{{attr}} no es un atributo ARIA reconocido.","ariaValidAttr_hint_fail":"Corregir el nombre del atributo (comprobar si hay errores tipográficos), o eliminarlo si no es necesario.","ariaValidAttrValue_title":"Los valores de los atributos aria-* deben coincidir con su tipo declarado","ariaValidAttrValue_description":"Comprueba que cada atributo aria-* reconocido tenga un valor conforme a su tipo declarado por WAI-ARIA (booleano, tri-estado, token, entero, número o referencia de ID).","ariaValidAttrValue_summary_fail":"{{attr}}=\"{{value}}\" no es un valor válido para este atributo.","ariaValidAttrValue_hint_fail":"Usar un valor que coincida con el tipo esperado del atributo (consultar la especificación WAI-ARIA para este atributo).","ariaAllowedAttr_title":"Los atributos aria-* deben estar permitidos para el rol del elemento","ariaAllowedAttr_description":"Comprueba que cada atributo aria-* reconocido presente en un elemento con un rol explícito esté admitido globalmente o admitido por ese rol.","ariaAllowedAttr_summary_fail":"{{attr}} no está permitido en role=\"{{role}}\".","ariaAllowedAttr_hint_fail":"Eliminar este atributo, o usar un rol que lo admita.","ariaAllowedAttr_summary_fail_roleless":"\u003c{{element}}> no tiene rol ARIA, así que nada admite en él el atributo {{attr}}.","ariaAllowedAttr_hint_fail_roleless":"Quitar {{attr}} o llevarlo a un elemento cuyo rol lo admita. Un atributo ARIA específico de rol en un elemento sin rol lo ignora la tecnología de apoyo.","ariaAllowedAttr_summary_cantTell":"{{attr}} está obsoleto en role=\"{{role}}\" (todavía permitido, pero desaconsejado).","ariaAllowedAttr_hint_cantTell":"Este atributo se eliminó del conjunto global de ARIA en 1.2; elimínelo o use un rol que lo admita, ya que una versión futura de ARIA podría no permitirlo.","ariaProhibitedAttr_title":"Los atributos de nombrado ARIA no deben usarse en roles que los prohíban","ariaProhibitedAttr_description":"Comprueba que aria-label/aria-labelledby no estén presentes en roles WAI-ARIA cuya especificación prohíbe explícitamente el nombrado ARIA (por ejemplo, generic, emphasis, strong, paragraph).","ariaProhibitedAttr_summary_fail":"{{attr}} está prohibido en role=\"{{role}}\".","ariaProhibitedAttr_hint_fail":"Eliminar este atributo; este rol no debe tener un nombre accesible.","ariaProhibitedAttr_summary_fail_roleless":"Este {{element}} no tiene rol ni ninguna otra fuente de nombre accesible, por lo que {{attr}} no se expone de forma fiable a las tecnologías de asistencia.","ariaProhibitedAttr_hint_fail_roleless":"Asignar a este elemento un rol que admita un nombre accesible (por ejemplo, role=\"img\"/\"button\"), o eliminar este atributo si no cumple ningún propósito sin uno.","ariaProhibitedAttr_summary_cantTell_roleless":"Este {{element}} no tiene rol, por lo que es posible que {{attr}} no se exponga como su nombre accesible a las tecnologías de asistencia; pero el propio contenido del elemento ya proporciona uno.","ariaProhibitedAttr_hint_cantTell_roleless":"Verificar si el contenido de texto existente ya funciona como etiqueta de este elemento; si es así, el atributo de nombrado es redundante, de lo contrario asignar al elemento un rol que admita nombrado (por ejemplo, role=\"img\").","ariaRequiredAttr_title":"Los roles con un estado/propiedad ARIA obligatorio deben incluirlo","ariaRequiredAttr_description":"Comprueba que los elementos con un rol explícito lleven todo estado/propiedad aria-* obligatorio, inequívoco e independiente del contexto para ese rol (por ejemplo, role=\"checkbox\" debe tener aria-checked).","ariaRequiredAttr_summary_fail":"{{attr}} es obligatorio para role=\"{{role}}\", pero falta.","ariaRequiredAttr_hint_fail":"Agregar este atributo con un valor válido para este rol.","ariaAllowedRole_title":"El rol explícito debe estar permitido para su elemento anfitrión","ariaAllowedRole_description":"Comprueba que un atributo role=\"\" explícito sea uno de los roles que la especificación ARIA-in-HTML permite para el elemento anfitrión (por ejemplo, role=\"tab\" no está permitido en \u003cnav>).","ariaAllowedRole_summary_fail":"role=\"{{role}}\" no está permitido en \u003c{{element}}>.","ariaAllowedRole_hint_fail":"Usar un rol permitido para este elemento, o cambiar el elemento anfitrión.","ariaRequiredChildren_title":"Los roles contenedores deben poseer al menos un rol hijo obligatorio","ariaRequiredChildren_description":"Comprueba que los roles contenedores con una entrada documentada de \"elementos propios obligatorios\" (list, listbox, menu, radiogroup, table, grid, tablist, tree, row, ...) contengan al menos un descendiente, o un elemento referenciado por aria-owns, con un rol propio aceptable.","ariaRequiredChildren_summary_fail":"role=\"{{role}}\" no tiene ningún hijo propio con alguno de los roles obligatorios: {{requiredRoles}}.","ariaRequiredChildren_hint_fail":"Agregar un descendiente (o un elemento referenciado por aria-owns) con alguno de los roles propios obligatorios.","ariaProhibitedChildren_title":"Los roles contenedores no deben poseer un hijo con un rol no permitido","ariaProhibitedChildren_description":"Comprueba que todo hijo perteneciente al árbol de accesibilidad de un rol contenedor (list, listbox, menu, menubar, radiogroup, rowgroup, table, grid, treegrid, tablist, tree, row) tenga uno de los roles propios permitidos por ese rol.","ariaProhibitedChildren_summary_fail":"Este elemento tiene role=\"{{childRole}}\", que no es un rol hijo propio permitido dentro del contenedor role=\"{{containerRole}}\" que lo envuelve.","ariaProhibitedChildren_hint_fail":"Eliminar o cambiar este rol para que coincida con uno de los roles propios permitidos del contenedor ({{allowedRoles}}), o mover este elemento fuera del contenedor {{containerRole}}.","ariaProhibitedChildren_summary_fail_roleless":"Este elemento no tiene un rol explícito pero lleva {{attr}}, lo que lo convierte en un nodo real del árbol de accesibilidad que no es un hijo propio permitido dentro del contenedor role=\"{{containerRole}}\" que lo envuelve.","ariaProhibitedChildren_hint_fail_roleless":"Eliminar {{attr}} (o la pertenencia al contenedor role=\"{{containerRole}}\"), o asignar a este elemento role=\"presentation\"/\"none\" si no está pensado para ser su propio nodo del árbol de accesibilidad.","ariaProhibitedChildren_summary_fail_native_focusable":"Este elemento no tiene un rol explícito, pero es enfocable de forma nativa, lo que lo convierte en un nodo real del árbol de accesibilidad que no es un hijo propio permitido dentro del contenedor role=\"{{containerRole}}\" que lo envuelve.","ariaProhibitedChildren_hint_fail_native_focusable":"Asignar a este elemento role=\"presentation\"/\"none\", eliminar su capacidad de enfoque nativa (por ejemplo, quitar el atributo href/tabindex que la otorga), o moverlo fuera del contenedor {{containerRole}}.","ariaRequiredParent_title":"Los roles que requieren un rol de contexto específico deben estar en ese contexto","ariaRequiredParent_description":"Comprueba que los roles con una entrada documentada de \"rol de contexto obligatorio\" (listitem, option, tab, treeitem, row, cell, ...) tengan un ancestro, o un propietario aria-owns, con un rol de contexto aceptable.","ariaRequiredParent_summary_fail":"role=\"{{role}}\" requiere un rol de contexto entre: {{requiredRoles}}, que no se encontró.","ariaRequiredParent_hint_fail":"Colocar este elemento dentro de (o referenciarlo mediante aria-owns desde) un elemento con un rol de contexto aceptable.","deprecatedElements_title":"No deben usarse elementos obsoletos no detenibles (\u003cblink>, \u003cmarquee>)","deprecatedElements_description":"Comprueba que no estén presentes elementos HTML obsoletos y no estándar cuyo contenido parpadeante o en desplazamiento no pueda ser pausado, detenido u ocultado por el usuario (\u003cblink>, \u003cmarquee>).","deprecatedElements_summary_fail":"El contenido de \u003c{{element}}> no puede ser pausado, detenido ni ocultado por el usuario.","deprecatedElements_hint_fail":"Eliminar este elemento; usar contenido estático, o una animación con un control de pausa/detención visible para el usuario, en su lugar.","iframeNamePresent_title":"Los marcos tienen un nombre accesible","iframeNamePresent_description":"Comprueba que los elementos \u003ciframe>/\u003cframe> expongan un nombre accesible no vacío mediante aria-label, aria-labelledby o el atributo title.","iframeNamePresent_summary_fail":"Este \u003c{{element}}> no tiene nombre accesible.","iframeNamePresent_hint_fail":"Agregar un atributo title (o aria-label/aria-labelledby) que describa el contenido o el propósito del marco.","iframeTitleUnique_title":"Los títulos de los marcos deben ser únicos","iframeTitleUnique_description":"Comprueba que dos elementos \u003ciframe>/\u003cframe> no compartan, dentro del alcance, el mismo valor de atributo title.","iframeTitleUnique_summary_fail":"El título \"{{title}}\" de este \u003c{{element}}> no es único entre los marcos de esta página.","iframeTitleUnique_hint_fail":"Asignar a cada marco un título distinto que describa su contenido o propósito específico.","iframeFocusableContent_title":"Los marcos con tabindex=\"-1\" no deben contener contenido enfocable","iframeFocusableContent_description":"Comprueba que los elementos \u003ciframe>/\u003cframe> del mismo origen con tabindex=\"-1\" no contengan contenido enfocable, ya que los navegadores no propagan esa restricción al documento incrustado del marco.","iframeFocusableContent_summary_fail":"Este \u003c{{element}}> tiene tabindex=\"-1\" pero su contenido incluye elementos enfocables, que siguen siendo alcanzables por teclado.","iframeFocusableContent_hint_fail":"Eliminar el contenido enfocable del marco, o eliminar tabindex=\"-1\" si el marco está pensado para ser alcanzable.","tableHeadersAttrValid_title":"El atributo \"headers\" de la celda de tabla debe referenciar celdas de encabezado válidas","tableHeadersAttrValid_description":"Comprueba que cada id en un atributo headers de \u003ctd>/\u003cth> se resuelva en una celda (\u003ctd> o \u003cth>) dentro de la misma tabla (que no falte, que no sea un elemento distinto de una celda, y que no sea ella misma).","tableHeadersAttrValid_summary_fail":"El atributo headers de este \u003c{{element}}> referencia celda(s) de encabezado no válida(s): {{invalidIds}}.","tableHeadersAttrValid_hint_fail":"Actualizar el atributo headers para que cada id haga referencia a un elemento \u003cth> dentro de la misma tabla.","tableThHasDataCells_title":"Los elementos \u003cth> deben describir al menos una celda de datos","tableThHasDataCells_description":"Comprueba que una tabla que contiene elementos \u003cth> también contenga al menos una celda de datos \u003ctd> para que esos encabezados describan.","tableThHasDataCells_summary_fail":"Esta tabla tiene celdas de encabezado pero ninguna celda de datos que describir.","tableThHasDataCells_hint_fail":"Agregar celdas de datos (\u003ctd>) a la tabla, o eliminar las celdas de encabezado si la tabla no tiene datos.","ariaHiddenBody_title":"El \u003cbody> del documento no debe ser aria-hidden","ariaHiddenBody_description":"Comprueba que \u003cbody> no tenga aria-hidden=\"true\", lo que eliminaría toda la página del árbol de accesibilidad.","ariaHiddenBody_summary_fail":"El body del documento tiene aria-hidden=\"true\", lo que oculta toda la página a las tecnologías de asistencia.","ariaHiddenBody_hint_fail":"Eliminar aria-hidden de \u003cbody>. Ocultar elementos específicos en su lugar, si esa era la intención.","listChildrenValid_title":"Las listas solo deben contener directamente elementos de lista","listChildrenValid_description":"Comprueba que los elementos \u003cul>/\u003col> solo tengan como hijos directos \u003cli>, \u003cscript> o \u003ctemplate>.","listChildrenValid_summary_fail":"Este \u003c{{element}}> contiene un hijo directo que no es un elemento de lista: {{invalidChildren}}.","listChildrenValid_hint_fail":"Usar únicamente \u003cli> (o \u003cscript>/\u003ctemplate>) como hijos directos de \u003cul>/\u003col>; mover el resto del marcado dentro de un \u003cli>.","listitemParentValid_title":"Los elementos de lista deben estar dentro de un contenedor de lista","listitemParentValid_description":"Comprueba que los elementos \u003cli> estén contenidos por \u003cul>, \u003col>, o un elemento con role=\"list\".","listitemParentValid_summary_fail":"El padre de este elemento de lista (\u003c{{parentElement}}>) no es un contenedor de lista.","listitemParentValid_hint_fail":"Colocar este \u003cli> dentro de un \u003cul>/\u003col>, o asignar a su padre role=\"list\".","definitionListChildrenValid_title":"Las listas de descripción deben estar estructuradas correctamente","definitionListChildrenValid_description":"Comprueba que los elementos \u003cdl> solo contengan directamente grupos \u003cdt>/\u003cdd> (opcionalmente envueltos en un \u003cdiv>), \u003cscript>, \u003ctemplate> o \u003cstyle>.","definitionListChildrenValid_summary_fail_invalidChild":"Esta lista de descripción contiene un hijo directo o envuelto que no forma parte de un grupo dt/dd: {{invalidChildren}}.","definitionListChildrenValid_hint_fail_invalidChild":"Usar únicamente \u003cdt>/\u003cdd> (opcionalmente envueltos en un \u003cdiv>), \u003cscript>, \u003ctemplate> o \u003cstyle> dentro de \u003cdl>.","definitionListChildrenValid_summary_fail_noDtDd":"Esta lista de descripción no tiene ningún grupo término-definición \u003cdt>/\u003cdd>.","definitionListChildrenValid_hint_fail_noDtDd":"Agregar al menos un par \u003cdt>/\u003cdd> dentro de este \u003cdl>.","dlitemParentValid_title":"Los elementos de lista de descripción deben estar dentro de una lista de descripción","dlitemParentValid_description":"Comprueba que los elementos \u003cdt>/\u003cdd> estén contenidos por un \u003cdl>, directamente o mediante un único \u003cdiv> envolvente.","dlitemParentValid_summary_fail":"El padre (\u003c{{parentElement}}>) de este \u003c{{element}}> no es una lista de descripción.","dlitemParentValid_hint_fail":"Colocar este \u003cdt>/\u003cdd> dentro de un \u003cdl>, directamente o envuelto en un único \u003cdiv>.","duplicateId_title":"Los ID deben ser únicos","duplicateId_description":"Comprueba que cada valor no vacío del atributo id es único dentro de su propio árbol de documento o de shadow DOM (WCAG 2.0/2.1 SC 4.1.1, eliminado en WCAG 2.2).","duplicateId_summary_fail":"El id «{{id}}» se usa en {{count}} elementos del mismo árbol.","duplicateId_hint_fail":"Dar a cada elemento su propio id. Un id duplicado rompe \u003clabel for>, los enlaces de fragmento, getElementById y todo atributo de referencia por id: todos resuelven solo a la primera coincidencia.","duplicateIdAria_title":"Los IDs referenciados por ARIA deben ser únicos","duplicateIdAria_description":"Comprueba que cualquier valor de id referenciado por un atributo de referencia de ID de ARIA (aria-labelledby, aria-describedby, aria-owns, aria-controls, aria-activedescendant, aria-flowto, aria-errormessage, aria-details) sea único en el documento.","duplicateIdAria_summary_cantTell":"El id \"{{id}}\" está referenciado por un atributo ARIA, pero lo usan {{duplicateCount}} elementos; la referencia apunta al primero.","duplicateIdAria_hint_cantTell":"Comprobar que el primer elemento con ese id es el destino previsto, o hacer único el id dentro del documento.","summaryNamePresent_title":"Los elementos \u003csummary> tienen un nombre accesible","summaryNamePresent_description":"Comprueba que los elementos \u003csummary> expongan un nombre accesible no vacío.","summaryNamePresent_summary_fail":"Este resumen no tiene nombre accesible.","summaryNamePresent_hint_fail":"Proporcionar texto de resumen que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","metaViewportZoomEnabled_title":"La etiqueta meta viewport no debe deshabilitar el zoom","metaViewportZoomEnabled_description":"Comprueba que \u003cmeta name=\"viewport\"> no establezca user-scalable=no ni maximum-scale por debajo de 2 (200%).","metaViewportZoomEnabled_summary_fail":"Esta etiqueta meta viewport restringe la capacidad del usuario para hacer zoom ({{reasons}}).","metaViewportZoomEnabled_hint_fail":"Eliminar user-scalable=no y cualquier maximum-scale por debajo de 2 del contenido de la etiqueta meta viewport.","metaRefreshTimingAbsent_title":"La página no debe usar un meta refresh con temporización","metaRefreshTimingAbsent_description":"Comprueba que \u003cmeta http-equiv=\"refresh\"> no imponga un retraso positivo de 20 horas o menos.","metaRefreshTimingAbsent_summary_fail":"Esta página se actualiza automáticamente después de {{delay}} segundos.","metaRefreshTimingAbsent_hint_fail":"Eliminar el meta refresh con temporización, o proporcionar una forma de que los usuarios lo desactiven, lo extiendan o lo pausen antes de que se active.","meterNamePresent_title":"Los medidores tienen un nombre accesible","meterNamePresent_description":"Comprueba que los elementos con role=\"meter\" expongan un nombre accesible no vacío.","meterNamePresent_summary_fail":"Este medidor no tiene nombre accesible.","meterNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de este medidor.","progressbarNamePresent_title":"Las barras de progreso tienen un nombre accesible","progressbarNamePresent_description":"Comprueba que los elementos con role=\"progressbar\" expongan un nombre accesible no vacío.","progressbarNamePresent_summary_fail":"Esta barra de progreso no tiene nombre accesible.","progressbarNamePresent_hint_fail":"Proporcionar aria-label, aria-labelledby o un atributo title; el contenido de texto visible no se expone como el nombre accesible de esta barra de progreso.","tooltipNamePresent_title":"La información sobre herramientas tiene un nombre accesible","tooltipNamePresent_description":"Comprueba que los elementos con role=\"tooltip\" expongan un nombre accesible no vacío.","tooltipNamePresent_summary_fail":"Esta información sobre herramientas no tiene nombre accesible.","tooltipNamePresent_hint_fail":"Proporcionar texto de información sobre herramientas que no esté oculto a las tecnologías de asistencia, o proporcionar aria-label o aria-labelledby.","serverSideImageMapAbsent_title":"Las imágenes no deben usar un mapa de imagen del lado del servidor","serverSideImageMapAbsent_description":"Comprueba que los elementos \u003cimg> no lleven el atributo ismap (los mapas de imagen del lado del servidor no tienen equivalente operable por teclado).","serverSideImageMapAbsent_summary_fail":"Esta imagen usa un mapa de imagen del lado del servidor, que no tiene equivalente operable por teclado.","serverSideImageMapAbsent_hint_fail":"Reemplazar el mapa de imagen del lado del servidor (ismap) por un mapa de imagen del lado del cliente (\u003cmap>/\u003carea>) o por enlaces/botones accesibles independientes.","formControlSingleLabel_title":"Los controles de formulario no deben tener varias etiquetas","formControlSingleLabel_description":"Comprueba que un control de formulario esté asociado a como máximo una \u003clabel> (por envoltura o mediante label[for]).","formControlSingleLabel_summary_fail":"Este \u003c{{element}}> está asociado a {{labelCount}} etiquetas.","formControlSingleLabel_hint_fail":"Mantener solo una \u003clabel> por control de formulario (ya sea envolviéndolo o referenciándolo mediante for/id).","formControlSingleLabel_summary_cantTell":"Este \u003c{{element}}> tiene una \u003clabel> que lo etiqueta más una asociación de \u003clabel> vacía adicional; verifique cómo se anuncia.","formControlSingleLabel_hint_cantTell":"Elimine la \u003clabel> vacía redundante para que solo una \u003clabel> quede asociada al control.","nestedInteractiveControlsAbsent_title":"Los controles interactivos no deben estar anidados","nestedInteractiveControlsAbsent_description":"Comprueba que un control interactivo (enlace, botón, control de formulario o rol de widget ARIA) no contenga otro control interactivo.","nestedInteractiveControlsAbsent_summary_fail":"Este \u003c{{element}}> contiene uno o más controles interactivos anidados: {{nestedElements}}.","nestedInteractiveControlsAbsent_hint_fail":"Mover el/los control(es) interactivo(s) anidado(s) fuera de este elemento; los controles interactivos anidados no son operables de forma fiable mediante tecnología de asistencia.","presentationalChildrenFocusableAbsent_title":"Los roles con hijos presentacionales no deben contener contenido enfocable","presentationalChildrenFocusableAbsent_description":"Comprueba que un elemento cuyo rol convierte a sus hijos en presentacionales (button, checkbox, img, option, radio, slider, switch, tab, …) no contiene ningún descendiente que reciba una parada de tabulación.","presentationalChildrenFocusableAbsent_summary_fail":"Este elemento con role=\"{{role}}\" convierte a sus hijos en presentacionales, pero contiene contenido que sigue formando parte de la navegación secuencial por foco ({{focusableElements}}).","presentationalChildrenFocusableAbsent_hint_fail":"Mueva el contenido enfocable fuera de este elemento o quite el rol que convierte a los hijos en presentacionales: al recibir el foco dentro de él no hay rol ni nombre que anunciar.","bypassBlocksPresent_title":"La página debe proporcionar una forma de omitir bloques repetidos","bypassBlocksPresent_description":"Comprueba que la página tenga al menos un mecanismo reconocido de omisión de bloques del criterio de éxito 2.4.1 de WCAG: un landmark main, un enlace de anclaje funcional dentro de la misma página, o un encabezado.","bypassBlocksPresent_summary_cantTell":"No se detectó ninguna forma reconocida de omitir bloques de contenido repetidos en esta página; verifique que exista un mecanismo de omisión.","bypassBlocksPresent_hint_cantTell":"Confirme que la página ofrece un mecanismo de omisión: un landmark main (\u003cmain> o role=\"main\"), un enlace funcional de \"saltar al contenido\", o elementos de encabezado que las tecnologías de asistencia puedan usar para saltar el contenido repetido. (Un mecanismo puede estar oculto temporalmente —por ejemplo, mientras un diálogo modal deja la página inerte— o proporcionarse a nivel de sitio; esto requiere confirmación humana.)","landmarkBannerIsTopLevel_title":"El landmark banner debe ser de nivel superior","landmarkBannerIsTopLevel_description":"Comprueba que el landmark banner (role=\"banner\" o un \u003cheader> no anidado) no esté anidado dentro de otra región landmark.","landmarkBannerIsTopLevel_summary_cantTell":"Este landmark banner está anidado dentro de otra región landmark.","landmarkBannerIsTopLevel_hint_cantTell":"Mover el landmark banner (header/role=\"banner\") para que no esté contenido por otro landmark; un banner debe ser una región de nivel superior de la página.","landmarkContentinfoIsTopLevel_title":"El landmark contentinfo debe ser de nivel superior","landmarkContentinfoIsTopLevel_description":"Comprueba que el landmark contentinfo (role=\"contentinfo\" o un \u003cfooter> no anidado) no esté anidado dentro de otra región landmark.","landmarkContentinfoIsTopLevel_summary_cantTell":"Este landmark contentinfo está anidado dentro de otra región landmark.","landmarkContentinfoIsTopLevel_hint_cantTell":"Mover el landmark contentinfo (footer/role=\"contentinfo\") para que no esté contenido por otro landmark; contentinfo debe ser una región de nivel superior de la página.","landmarkMainIsTopLevel_title":"El landmark main debe ser de nivel superior","landmarkMainIsTopLevel_description":"Comprueba que el landmark main (role=\"main\" o \u003cmain>) no esté anidado dentro de otra región landmark.","landmarkMainIsTopLevel_summary_cantTell":"Este landmark main está anidado dentro de otra región landmark.","landmarkMainIsTopLevel_hint_cantTell":"Mover el landmark main (\u003cmain>/role=\"main\") para que no esté contenido por otro landmark; main debe ser una región de nivel superior de la página.","landmarkNoDuplicateBanner_title":"La página no debe tener más de un landmark banner","landmarkNoDuplicateBanner_description":"Comprueba que exista como máximo un landmark banner (role=\"banner\" o un \u003cheader> no anidado) en la página.","landmarkNoDuplicateBanner_summary_cantTell":"Esta página tiene más de un landmark banner.","landmarkNoDuplicateBanner_hint_cantTell":"Mantener solo un landmark banner (header/role=\"banner\") por página.","landmarkNoDuplicateContentinfo_title":"La página no debe tener más de un landmark contentinfo","landmarkNoDuplicateContentinfo_description":"Comprueba que exista como máximo un landmark contentinfo (role=\"contentinfo\" o un \u003cfooter> no anidado) en la página.","landmarkNoDuplicateContentinfo_summary_cantTell":"Esta página tiene más de un landmark contentinfo.","landmarkNoDuplicateContentinfo_hint_cantTell":"Mantener solo un landmark contentinfo (footer/role=\"contentinfo\") por página.","landmarkNoDuplicateMain_title":"La página no debe tener más de un landmark main","landmarkNoDuplicateMain_description":"Comprueba que exista como máximo un landmark main (role=\"main\" o \u003cmain>) en la página.","landmarkNoDuplicateMain_summary_cantTell":"Esta página tiene más de un landmark main.","landmarkNoDuplicateMain_hint_cantTell":"Mantener solo un landmark main (\u003cmain>/role=\"main\") por página.","landmarkOneMain_title":"La página debería tener un landmark main","landmarkOneMain_description":"Comprueba que la página tenga al menos un landmark main (role=\"main\" o \u003cmain>).","landmarkOneMain_summary_cantTell_missing":"Esta página no tiene ningún landmark main.","landmarkOneMain_hint_cantTell_missing":"Agregar un landmark main (\u003cmain> o role=\"main\") alrededor del contenido principal de la página.","landmarkUnique_title":"Los landmarks con el mismo rol deben tener nombres únicos","landmarkUnique_description":"Comprueba que, cuando dos o más landmarks comparten el mismo rol, cada uno tenga un nombre accesible distinto.","landmarkUnique_summary_cantTell_duplicateName":"Este landmark {{role}} comparte su nombre accesible con otro landmark {{role}}.","landmarkUnique_summary_cantTell_bothUnnamed":"Este landmark {{role}} no tiene nombre accesible, y existe más de un landmark {{role}} sin nombre en esta página.","landmarkUnique_hint_cantTell":"Asignar a cada landmark {{role}} un nombre distinto mediante aria-label o aria-labelledby.","emptyHeading_title":"Los encabezados no deben estar vacíos","emptyHeading_description":"Comprueba que los elementos de encabezado (\u003ch1>-\u003ch6> o role=\"heading\") tengan un nombre accesible no vacío.","emptyHeading_summary_cantTell":"Este encabezado no tiene nombre accesible.","emptyHeading_hint_cantTell":"Agregar contenido de texto (o aria-label/aria-labelledby) a este encabezado, o eliminarlo si no es necesario.","headingOrder_title":"Los niveles de encabezado no deben saltar un nivel","headingOrder_description":"Comprueba que los niveles de encabezado aumenten como máximo en uno a la vez en el orden del documento.","headingOrder_summary_cantTell":"Este encabezado salta del nivel {{fromLevel}} al nivel {{toLevel}}, saltándose un nivel.","headingOrder_hint_cantTell":"Usar niveles de encabezado consecutivos (no saltar un nivel al profundizar) para que el esquema del documento se mantenga predecible.","pageHasHeadingOne_title":"La página debería tener un encabezado de nivel uno","pageHasHeadingOne_description":"Comprueba que la página tenga al menos un encabezado de nivel uno (\u003ch1> o role=\"heading\" con aria-level=\"1\").","pageHasHeadingOne_summary_cantTell":"Esta página no tiene ningún encabezado de nivel uno.","pageHasHeadingOne_hint_cantTell":"Agregar un encabezado de nivel uno (\u003ch1> o role=\"heading\" aria-level=\"1\") que identifique el contenido principal de la página.","accesskeys_title":"Los valores de accesskey deben ser únicos","accesskeys_description":"Comprueba que no haya dos elementos en la página que compartan el mismo valor de atributo accesskey.","accesskeys_summary_cantTell":"El accesskey de este elemento se comparte con otro elemento de la página.","accesskeys_hint_cantTell":"Hacer único cada valor de accesskey en toda la página.","scopeAttrValid_title":"El atributo scope debe tener un valor válido","scopeAttrValid_description":"Comprueba que scope=\"...\" sea uno de los valores row, col, rowgroup o colgroup.","scopeAttrValid_summary_cantTell":"Este valor del atributo scope no se reconoce.","scopeAttrValid_hint_cantTell":"Usar uno de los valores row, col, rowgroup o colgroup para el atributo scope.","tabindex_title":"tabindex no debería ser mayor que 0","tabindex_description":"Comprueba que los valores de tabindex sean 0 o negativos, no un número positivo.","tabindex_summary_cantTell":"Este elemento tiene un tabindex positivo, lo que sobrescribe el orden de tabulación natural.","tabindex_hint_cantTell":"Usar tabindex=\"0\" (o un valor negativo para eliminarlo del orden de tabulación) en lugar de un número positivo; corregir el orden del DOM si se necesita un orden de tabulación diferente.","emptyTableHeader_title":"Las celdas de encabezado de tabla no deben estar vacías","emptyTableHeader_description":"Comprueba que las celdas de encabezado (\u003cth>, o cualquier elemento con role=\"columnheader\"/\"rowheader\") tengan contenido de texto visible; un encabezado nombrado únicamente mediante aria-label/aria-labelledby también se señala, ya que el soporte real de lectores de pantalla/navegadores para eso es inconsistente.","emptyTableHeader_summary_cantTell":"Esta celda de encabezado de tabla no tiene nombre accesible.","emptyTableHeader_hint_cantTell":"Agregar contenido de texto (o aria-label/aria-labelledby) a esta celda de encabezado, o eliminarla si no es necesaria.","emptyTableHeader_summary_cantTell_ariaOnly":"Esta celda de encabezado de tabla no tiene texto visible; su único nombre accesible proviene de aria-label/aria-labelledby, que se sabe que ciertas combinaciones reales de lector de pantalla/navegador (por ejemplo, NVDA+Firefox, iOS VoiceOver+Safari) ignoran en elementos \u003cth>.","emptyTableHeader_hint_cantTell_ariaOnly":"Agregar contenido de texto visible a esta celda de encabezado (además de, o en lugar de, aria-label/aria-labelledby); el texto visible es el único mecanismo de nombrado confirmado que funciona en los lectores de pantalla probados.","labelTitleOnly_title":"Los controles de formulario no deben usar title como única etiqueta","labelTitleOnly_description":"Comprueba que un control de formulario con un atributo title también tenga una etiqueta real (elemento label, aria-label o aria-labelledby).","labelTitleOnly_summary_cantTell":"Este control de formulario depende del atributo title como única etiqueta.","labelTitleOnly_hint_cantTell":"Agregar una \u003clabel> visible (o aria-label/aria-labelledby) además de, o en lugar de, el atributo title.","imageRedundantAlt_title":"El texto alt de la imagen no debe duplicar el texto visible adyacente","imageRedundantAlt_description":"Comprueba que el texto alt de un \u003cimg> no sea idéntico a otro texto visible ya presente en su elemento padre inmediato.","imageRedundantAlt_summary_cantTell":"El texto alt de esta imagen duplica otro texto visible justo al lado.","imageRedundantAlt_hint_cantTell":"Dejar el texto alt vacío (alt=\"\") si la imagen es puramente decorativa junto al texto, o eliminar la duplicación redundante.","tableDuplicateName_title":"El caption de la tabla no debe duplicar su atributo summary","tableDuplicateName_description":"Comprueba que el texto del \u003ccaption> de una \u003ctable> no sea idéntico a su atributo summary (obsoleto).","tableDuplicateName_summary_cantTell":"El caption de esta tabla duplica su atributo summary.","tableDuplicateName_hint_cantTell":"Eliminar el atributo summary redundante, o hacer que proporcione información diferente a la del caption.","metaViewportLarge_title":"La etiqueta meta viewport debería permitir el zoom hasta el 500%","metaViewportLarge_description":"Comprueba que \u003cmeta name=\"viewport\"> no establezca user-scalable=no ni maximum-scale por debajo de 5 (500%).","metaViewportLarge_summary_cantTell":"Esta etiqueta meta viewport restringe el zoom por debajo del objetivo recomendado del 500%.","metaViewportLarge_hint_cantTell":"Eliminar user-scalable=no y elevar maximum-scale a al menos 5 (500%) si es posible.","presentationRoleConflict_title":"El rol presentacional no debe entrar en conflicto con un atributo ARIA global ni con la capacidad de enfoque","presentationRoleConflict_description":"Comprueba que role=\"presentation\"/\"none\" (incluido el rol de presentación implícito de \u003cimg alt=\"\">) no se combine con un atributo ARIA global (aria-label, aria-hidden, aria-describedby, ...) ni con la capacidad de enfoque (tabindex/nativa).","presentationRoleConflict_summary_cantTell":"Este elemento con role=\"{{role}}\" también tiene una condición conflictiva ({{attrs}}), lo que restaura su rol implícito y anula la intención presentacional.","presentationRoleConflict_hint_cantTell":"Eliminar el/los atributo(s) de nombrado conflictivo(s) y/o la capacidad de enfoque (tabindex/nativa) si el elemento debe permanecer presentacional, o eliminar role=\"presentation\"/\"none\" si debe exponerse a las tecnologías de asistencia.","region_title":"El contenido de la página debería estar dentro de una región landmark","region_description":"Comprueba que el contenido bajo \u003cbody> esté contenido dentro de una región landmark.","region_summary_cantTell":"Este contenido no está contenido dentro de ninguna región landmark.","region_hint_cantTell":"Mover este contenido dentro de una región landmark (main, nav, aside, una section etiquetada, etc.).","skipLink_title":"El enlace de salto debe tener un destino resoluble y utilizable","skipLink_description":"Comprueba que el fragmento href de un enlace de \"saltar a...\" se resuelva en un elemento real y actualmente utilizable del documento.","skipLink_summary_cantTell":"El destino de este enlace de salto no existe.","skipLink_hint_cantTell":"Apuntar el href del enlace de salto a un id que exista en el documento, o agregar el elemento destino que falta.","skipLink_summary_unusableTarget_cantTell":"Este enlace de salto apunta a un destino que existe pero que actualmente no es utilizable.","skipLink_hint_unusableTarget_cantTell":"Apuntar este enlace de salto a un destino que esté expuesto y sea utilizable como destino de navegación.","autocompleteValid_title":"El atributo autocomplete debe tener un valor de autocompletado válido","autocompleteValid_description":"Comprueba que un atributo autocomplete no vacío sea \"on\"/\"off\" o una lista de tokens de detalle de autocompletado bien formada.","autocompleteValid_summary_fail":"Este valor del atributo autocomplete no es un valor de autocompletado válido.","autocompleteValid_hint_fail":"Usar \"on\"/\"off\", o una lista de tokens de autocompletado válida (por ejemplo, \"shipping street-address\", \"cc-number\").","htmlXmlLangMismatch_title":"lang y xml:lang no deben estar en desacuerdo","htmlXmlLangMismatch_description":"Comprueba que los atributos lang y xml:lang del elemento \u003chtml> declaren el mismo idioma principal, cuando ambos están presentes.","htmlXmlLangMismatch_summary_fail":"Los atributos lang (\"{{lang}}\") y xml:lang (\"{{xmlLang}}\") declaran idiomas diferentes.","htmlXmlLangMismatch_hint_fail":"Hacer que lang y xml:lang declaren el mismo idioma principal, o eliminar el atributo obsoleto xml:lang.","avoidInlineSpacing_title":"El estilo en línea no debe forzar el espaciado de texto por debajo del umbral WCAG","avoidInlineSpacing_description":"Comprueba que cuando el estilo en línea fuerza line-height, letter-spacing o word-spacing con !important, el valor ya cumple WCAG 1.4.12, por lo que al usuario no le queda nada que anular.","avoidInlineSpacing_summary_fail":"El estilo en línea de este elemento fuerza {{properties}} con !important, bloqueando las anulaciones de espaciado de texto del usuario.","avoidInlineSpacing_hint_fail":"Eliminar !important de line-height/letter-spacing/word-spacing en los estilos en línea para que los usuarios puedan anular el espaciado de texto.","metaRefreshNoExceptions_title":"La página no debe usar un meta refresh en absoluto (AAA)","metaRefreshNoExceptions_description":"Comprueba que \u003cmeta http-equiv=\"refresh\"> no esté presente en absoluto, independientemente del retraso; es la contraparte más estricta de nivel AAA de la comprobación de nivel A que solo se aplica a los retrasos positivos.","metaRefreshNoExceptions_summary_fail":"Esta página usa un meta refresh, que es un cambio de contexto automático no iniciado por el usuario.","metaRefreshNoExceptions_hint_fail":"Eliminar el meta refresh; activar la redirección/actualización solo en respuesta a una acción del usuario.","validLang_title":"El atributo lang del elemento debe ser sintácticamente válido","validLang_description":"Comprueba que cualquier elemento (distinto de la raíz \u003chtml>) con un atributo lang no vacío use una etiqueta de idioma sintácticamente válida.","validLang_summary_fail":"Este valor del atributo lang (\"{{value}}\") no es una etiqueta de idioma sintácticamente válida.","validLang_hint_fail":"Usar una etiqueta de idioma BCP47 válida (por ejemplo, \"fr\", \"es-MX\").","linkInTextBlock_title":"Los enlaces dentro de bloques de texto deben distinguirse del texto circundante sin depender únicamente del color","linkInTextBlock_description":"Comprueba que un enlace dentro de un bloque de texto se distinga visualmente del texto circundante mediante subrayado, una diferencia de grosor/estilo de fuente, o una diferencia de contraste de color suficiente (>=3:1); no solo por el color.","linkInTextBlock_summary_fail":"Este enlace dentro de un bloque de texto depende únicamente del color para distinguirse del texto circundante.","linkInTextBlock_hint_fail":"Agregar un subrayado, una diferencia de grosor/estilo de fuente, o aumentar el contraste de color entre el enlace y el texto circundante a al menos 3:1.","noAutoplayAudio_title":"El audio en reproducción automática debería proporcionar un mecanismo de pausa/detención o control de volumen","noAutoplayAudio_description":"Señala elementos \u003caudio>/\u003cvideo> que se reproducen automáticamente sin silenciar y sin un atributo de controles nativo, para su revisión manual frente a la excepción de 3 segundos del criterio de éxito 1.4.2 de WCAG.","noAutoplayAudio_summary_cantTell":"Este elemento reproduce audio automáticamente sin un mecanismo nativo de pausa/detención o control de volumen.","noAutoplayAudio_hint_cantTell":"Si este clip dura más de 3 segundos, agregar un atributo controls (o un mecanismo personalizado equivalente) para que los usuarios puedan pausarlo/detenerlo o controlar su volumen independientemente del volumen del sistema.","videoCaption_title":"El video pregrabado debería proporcionar una pista de subtítulos","videoCaption_description":"Señala elementos \u003cvideo> sin un hijo \u003ctrack kind=\"captions\"|\"subtitles\">, para su revisión manual sobre si el video tiene una pista de audio que necesita subtítulos.","videoCaption_summary_cantTell":"Este video no tiene ninguna pista de subtítulos (captions o subtitles).","videoCaption_hint_cantTell":"Si este video tiene una pista de audio que transmite información, agregar un \u003ctrack kind=\"captions\" src=\"...\"> con el contenido subtitulado.","scrollableRegionFocusable_title":"Las regiones desplazables sin contenido enfocable deberían ser enfocables por teclado","scrollableRegionFocusable_description":"Señala elementos cuyo CSS declara overflow:auto/scroll, que no contienen ningún descendiente enfocable, y que no son enfocables por teclado por sí mismos, para su revisión manual sobre si su contenido realmente desborda y necesita acceso de desplazamiento por teclado.","scrollableRegionFocusable_summary_cantTell":"Este elemento declara overflow:auto/scroll, no tiene ningún descendiente enfocable, y no es enfocable por teclado por sí mismo.","scrollableRegionFocusable_hint_cantTell":"Si el contenido de esta región realmente desborda, agregar tabindex=\"0\" (y una etiqueta adecuada) para que los usuarios de teclado puedan enfocarla y desplazarse con las teclas de flecha.","identicalLinksSamePurpose_title":"Los enlaces con el mismo nombre accesible deberían llevar al mismo destino","identicalLinksSamePurpose_description":"Señala grupos de enlaces que comparten el mismo nombre accesible pero resuelven a más de un destino distinto, para su revisión manual sobre si cumplen el mismo propósito.","identicalLinksSamePurpose_summary_cantTell":"Este enlace comparte un nombre accesible con otros enlaces de la página que llevan a un destino diferente.","identicalLinksSamePurpose_hint_cantTell":"Asegurarse de que los enlaces con el mismo texto cumplan el mismo propósito, o hacer que el texto del enlace sea lo bastante distintivo para describir cada destino.","ariaBrailleEquivalent_title":"aria-braillelabel/aria-brailleroledescription deben tener un equivalente no braille","ariaBrailleEquivalent_description":"Comprueba que los elementos que usan aria-braillelabel también tengan un nombre accesible normal, y que los elementos que usan aria-brailleroledescription también tengan aria-roledescription.","ariaBrailleEquivalent_summary_fail":"Este elemento tiene {{attr}} pero no {{requires}}, su equivalente no braille.","ariaBrailleEquivalent_hint_fail":"{{attr}} es un complemento específico para braille, no un reemplazo; proporcionar también {{requires}}.","ariaConditionalAttr_title":"aria-errormessage requiere que aria-invalid tenga un valor distinto de false","ariaConditionalAttr_description":"Comprueba que los elementos con aria-errormessage también tengan aria-invalid establecido en \"true\", \"grammar\" o \"spelling\"; de lo contrario, el mensaje de error se elimina del árbol de accesibilidad.","ariaConditionalAttr_summary_fail":"Este elemento tiene aria-errormessage pero aria-invalid falta o es \"false\", por lo que el mensaje de error no se expone.","ariaConditionalAttr_hint_fail":"Establecer aria-invalid en \"true\" (o \"grammar\"/\"spelling\") siempre que aria-errormessage deba exponerse a las tecnologías de asistencia.","ariaCheckedStateMismatch_title":"El aria-checked de una casilla/botón de opción nativo debe coincidir con su estado real","ariaCheckedStateMismatch_description":"Señala un \u003cinput type=\"checkbox\">/\u003cinput type=\"radio\"> nativo cuyo valor explícito de aria-checked no coincide con su estado real marcado/indeterminado, para su revisión manual.","ariaCheckedStateMismatch_summary_cantTell":"El valor de aria-checked de este elemento no coincide con su estado real marcado/indeterminado.","ariaCheckedStateMismatch_hint_cantTell":"Establecer aria-checked para que coincida con el estado real del elemento, o eliminarlo; una casilla/botón de opción nativo ya expone este estado sin necesidad de él.","cssOrientationLock_title":"El CSS no debe bloquear la página a una única orientación","cssOrientationLock_description":"Comprueba que ninguna regla @media (orientation: portrait|landscape) establezca un transform: rotate(...) en la página, una técnica conocida para anular la orientación del dispositivo.","cssOrientationLock_summary_fail":"Una media query \"{{mediaText}}\" rota \"{{selectorText}}\", bloqueando la página a una sola orientación.","cssOrientationLock_summary_fail_unknownSelector":"Una consulta de medios \"{{mediaText}}\" rota un elemento sin selector legible y bloquea la página en una sola orientación.","cssOrientationLock_hint_fail":"Eliminar la transformación rotate() de la media query de orientación; dejar que la página responda de forma natural a la orientación del dispositivo en lugar de forzar una rotación visual.","ariaText_title":"Los elementos con role=\"text\" no deberían tener descendientes enfocables","ariaText_description":"Comprueba que los elementos con role=\"text\" no contengan ningún descendiente enfocable (enlace, botón, control de formulario, tabindex, iframe o contenteditable).","ariaText_summary_cantTell":"Este elemento con role=\"text\" contiene un descendiente enfocable.","ariaText_hint_cantTell":"Eliminar role=\"text\" (o eliminar el descendiente enfocable); una región de \"texto sin formato\" no debería contener contenido enfocable.","focusOrderSemantics_title":"Los elementos agregados al orden de tabulación deberían tener semántica interactiva","focusOrderSemantics_description":"Señala elementos con tabindex >= 0 cuyo rol explícito es un rol estructural/documental no interactivo (por ejemplo, heading, list, region, presentation), para su revisión manual.","focusOrderSemantics_summary_cantTell":"Este elemento está en el orden de tabulación (tabindex=\"{{tabindex}}\") pero tiene un rol no interactivo (\"{{role}}\").","focusOrderSemantics_hint_cantTell":"Eliminar tabindex si este elemento no está pensado para ser interactivo, o usar un rol interactivo que coincida con su comportamiento real.","pAsHeading_title":"Un \u003cp> con estilo de encabezado probablemente debería ser un encabezado real","pAsHeading_description":"Señala elementos \u003cp> cortos cuyo texto completo está en negrita y se renderiza a >=18px, para su revisión manual sobre si debería usarse un elemento de encabezado real en su lugar.","pAsHeading_summary_cantTell":"Este párrafo está completamente en negrita y se renderiza con un tamaño similar al de un encabezado.","pAsHeading_hint_cantTell":"Si este texto introduce una nueva sección, usar un elemento de encabezado real (\u003ch1>-\u003ch6> o role=\"heading\") en lugar de dar a un párrafo el estilo de un encabezado.","tableFakeCaption_title":"La primera fila de una tabla no debería sustituir a un \u003ccaption> real","tableFakeCaption_description":"Señala tablas sin \u003ccaption> cuya primera fila tiene una única celda no vacía mientras que las demás filas tienen varias celdas, para su revisión manual sobre si esa celda actúa como un caption falso.","tableFakeCaption_summary_cantTell":"Esta tabla no tiene \u003ccaption>, pero su primera fila es una única celda situada sobre filas con varias celdas; puede estar actuando como un caption falso.","tableFakeCaption_hint_cantTell":"Si esta celda está pensada para describir la tabla, usar un elemento \u003ccaption> real en lugar de una única celda en la primera fila.","tdHasHeader_title":"Las celdas de datos en tablas grandes deben tener un encabezado asociado","tdHasHeader_description":"Comprueba que cada \u003ctd> en una tabla grande y simple (sin colspan/rowspan) tenga un encabezado asociado, ya sea mediante un atributo headers, un \u003cth> de columna implícito por encima de ella, o un \u003cth> de fila implícito a su izquierda.","tdHasHeader_summary_fail":"Esta celda de datos no tiene ningún encabezado asociado (sin atributo headers, sin \u003cth> de columna por encima, sin \u003cth> de fila a la izquierda).","tdHasHeader_hint_fail":"Agregar un atributo headers que referencie el/los id de \u003cth> correspondiente(s), o reestructurar la tabla para que esta celda tenga un encabezado de fila/columna implícito.","mouseOnlyEventHandlers_title":"Los controladores de eventos en línea exclusivos de puntero deberían tener un equivalente alcanzable por teclado","mouseOnlyEventHandlers_description":"Señala elementos con un controlador de eventos en línea exclusivo de puntero (onmouseover, onmouseout, onmousedown, onmouseup, ondblclick, onmousemove, onmouseenter, onmouseleave) y sin un controlador equivalente alcanzable por teclado (onkeydown/onkeyup/onkeypress/onfocus/onblur), para su revisión manual.","mouseOnlyEventHandlers_summary_cantTell":"Este elemento tiene {{attrs}} pero ningún controlador equivalente alcanzable por teclado.","mouseOnlyEventHandlers_hint_cantTell":"Agregar onkeydown/onkeyup/onkeypress (o onfocus/onblur para comportamiento activado por hover) para que esta funcionalidad también sea alcanzable por teclado.","headingQuality_title":"El texto del encabezado debe ser descriptivo, no un marcador de posición","headingQuality_description":"Señala encabezados cuyo nombre accesible es un marcador de posición en lugar de una descripción del contenido que sigue: una palabra genérica («Encabezado», «Sin título»), una ranura numerada de plantilla («Sección 2»), un nombre de archivo o una URL.","headingQuality_summary_cantTell_placeholder":"El nombre accesible de este encabezado («{{name}}») es un marcador de posición, no una descripción del contenido que introduce.","headingQuality_summary_cantTell_filename":"El nombre accesible de este encabezado («{{name}}») es un nombre de archivo, no una descripción del contenido que introduce.","headingQuality_summary_cantTell_url":"El nombre accesible de este encabezado («{{name}}») es una URL, no una descripción del contenido que introduce.","headingQuality_hint_cantTell":"Reescribir el encabezado para que nombre el tema o el propósito del contenido que le sigue.","linkNameQuality_title":"El texto del enlace debe ser descriptivo, no genérico","linkNameQuality_description":"Señala enlaces cuyo nombre accesible completo es una frase no descriptiva conocida (por ejemplo, \"haz clic aquí\", \"leer más\", \"más\") o un nombre de formato de archivo aislado (por ejemplo, \"HTML\", \"PDF\") sin contexto cercano que indique a qué documento pertenece, para su revisión manual sobre si el propósito es claro.","linkNameQuality_summary_cantTell":"El nombre accesible de este enlace (\"{{name}}\") es una frase genérica y no descriptiva.","linkNameQuality_hint_cantTell":"Hacer que el propio texto del enlace describa su destino/propósito (por ejemplo, \"Descargar la guía de precios 2026\" en lugar de \"Descargar\"), o confirmar que el contexto circundante ya deja claro el propósito.","linkNameQuality_summary_cantTell_formatName":"El nombre accesible de este enlace (\"{{name}}\") indica un formato/tipo de archivo, pero no el documento al que pertenece.","linkNameQuality_hint_cantTell_formatName":"Indique el documento en el texto del enlace o en el texto/encabezado cercano asociado al enlace (por ejemplo, \"Descargar el informe anual (HTML)\" en lugar de un simple \"HTML\")."});
|
|
22
22
|
})(typeof window !== 'undefined' ? window : this);
|