Página principal » Codificación » Cómo mejorar la accesibilidad de la tabla HTML con el marcado

    Cómo mejorar la accesibilidad de la tabla HTML con el marcado

    La accesibilidad web se refiere al diseño de aplicaciones web de manera que las personas con discapacidades visuales puedan utilizarlas con facilidad. Algunos de estos usuarios confían en lectores de pantalla Para leer en voz alta el contenido de las páginas web. Los lectores de pantalla Interpreta el código presente en la página. y leer su contenido al usuario.

    es un elemento HTML muy utilizado para mostrar datos de forma estructurada en páginas web. Su diseño abarca desde los más simples hasta los más complejos, con encabezados de fila, encabezados combinados, etc..

    Si una tabla no está diseñada teniendo en cuenta la accesibilidad, será difícil para los lectores de pantalla traducir los datos en tablas complejas de manera significativa para los usuarios. Por lo tanto, para que las tablas HTML complejas sean más fácilmente comprensibles, para la accesibilidad, debemos asegúrese de que los encabezados, grupos de columnas, grupos de filas, etc. estén claramente definidos. A continuación veremos cómo es esto. logrado en el marcado.

    El atributo de alcance

    Incluso para una mesa simple con

    marcado con scope = "col" ayuda a la tecnología de asistencia a identificar que las celdas que siguen en la misma columna son nombres de estudiantes.

    Del mismo modo, células como

    que contiene scope = "colgroup" ayuda a los usuarios a identificar que los datos en las celdas que siguen en el grupo de columnas que abarca están asociados con ese tema en particular.

    Luego está la

    marcado con scope = "fila" que define que las celdas que lo siguen en la misma fila, que contiene el “grado” información sobre el nombre de ese estudiante en particular.

    Grupos de filas

    Ahora pasemos a otro ejemplo, este ejemplo tendrá casi la misma tabla que la anterior, excepto que intercambiaremos los encabezados de fila y columna, por lo que podremos trabajar con grupos de filas.

     
    etiqueta que define claramente los encabezados, puede mejorar su accesibilidad con el alcance atribuir y no dar lugar a ninguna confusión que pueda surgir de tipos similares de datos en las celdas.

    Nombre de empleado Código de empleado Código de proyecto Designación de empleado
    John Doe 32456 456789 Director
    Miriam Luther 78902 456789 Subdirector

    ¿Qué hace el atributo de alcance? Según W3C:

    En otras palabras, nos ayuda a asociar las celdas de datos con sus celdas de encabezado correspondientes.

    Tenga en cuenta que en el ejemplo anterior puede cambiar

    para . Mientras sea alcance tiene el valor columna, Se interpretará como el encabezado de la columna correspondiente..

    los alcance atributo puede tener cualquiera de estos cuatro valores; columna, fila, grupo de filas, colgante para referirse al encabezado de una columna, al encabezado de una fila, al encabezado de un grupo de columnas y al encabezado de un grupo de filas respectivamente.

    Mesas complejas

    Ahora pasemos a una mesa más compleja..

    Arriba hay una tabla que enumera a los estudiantes en una clase y sus calificaciones en práctica y teoría para tres materias.

    Aquí está el código HTML para ello. La mesa ha utilizado filas de filas y colspan para crear encabezados combinados para las celdas de datos.

    Nombre del estudiante Biología Química Física
    Práctico Teoría Práctico Teoría Práctico Teoría
    John Doe UNA UNA+ segundo UNA UNA UNA-
    Miriam Luther UNA UNA do do+ UNA UNA-

    En la tabla anterior, cada celda de datos, que es cada una de las celdas de la tabla mostrando el grado, Se asocia con tres piezas de información:

    • ¿A qué estudiante pertenece este grado??
    • ¿A qué asignatura pertenece este grado??
    • Es este grado para la sección de Práctica o Teoría.?

    Esos tres datos se definen en tres tipos diferentes de celdas de encabezado estructural y visualmente:

    • Nombre del estudiante
    • Nombre del tema
    • Practica o teoria

    Definamos lo mismo por accesibilidad..

    Nombre del estudiante Biología Química Física
    Práctico Teoría Práctico Teoría Práctico Teoría
    John Doe UNA UNA+ segundo UNA UNA UNA-
    Miriam Luther UNA UNA do do+ UNA UNA-

    En el marcado anterior hemos añadido alcance a celdas que contienen información de encabezado sobre las celdas de datos.

    Grupo de columnas

    Las células de biología, química y física deben asociarse con un grupo de dos columnas cada una (teoría y práctica). Solo añadiendo colspan = "2" no crea los grupos de columnas, solo indica que la celda en particular debe ocupar el espacio de dos celdas.

    Para crear el grupo de columnas debes usar colgante y luego agregar el lapso atribúyalo indicando cuántas columnas incluye ese grupo de columnas.

    los

    Nombre del estudiante Biología John Doe
    Tema John Doe Miriam Luther
    Biología Práctico UNA UNA
    Teoría UNA+ UNA
    Química Práctico segundo do
    Teoría UNA do+
    Física Práctico UNA UNA
    Teoría UNA- UNA-

    Ahora que tenemos nuestro ejemplo para trabajar, comencemos creando grupos de filas como hicimos para los grupos de columnas del ejemplo anterior..

    Sin embargo, los grupos de filas no se pueden crear utilizando una etiqueta como colgante porque no hay grupo de filas elemento.

    Las filas HTML generalmente se agrupan usando , y elementos. Un solo HTML

    elemento puede tener uno , uno y multiples . Usaremos multiples tbody en nuestra tabla para crear los grupos de filas y agregar el ámbito respectivo a las celdas de encabezado.

    Tema John Doe Miriam Luther
    Biología Práctico UNA UNA
    Teoría UNA+ UNA
    Química Práctico segundo do
    Teoría UNA do+
    Física Práctico UNA UNA
    Teoría UNA- UNA-

    Hemos añadido las filas. “Práctico” y “Teoría” en cada tbody creando grupos de filas con dos filas en cada uno. También hemos añadido el scope = "rowgroup" a las celdas que contienen la información de encabezado de esas dos filas (que es el nombre del sujeto al que pertenecen las calificaciones en este caso).

    Ahora lea: Altura de columna igual con CSS