¿Qué consideraciones de accesibilidad debo tener con los formularios HTML?

Crea formularios HTML accesibles con etiquetas («label») correctas, «fieldset», required, mensajes de error claros y buena navegabilidad por teclado.

LucusHost, el mejor hosting

Los formularios accesibles son cruciales para que todos los usuarios puedan interactuar con tu sitio. Aquí tienes las consideraciones más importantes:

  1. Etiquetas (<label>) claras y asociadas: cada control de formulario (<input>, <textarea>, <select>) necesita una etiqueta descriptiva. Asócialas correctamente usando el atributo for en la etiqueta, que coincida con el id del control, o envolviendo el control con la etiqueta.
    <label for="nombre">Nombre:</label>
    <input type="text" id="nombre" name="nombre">
    <input type="checkbox" id="acepto" name="acepto_terminos">
    <label for="acepto">Acepto los términos y condiciones</label>
  2. Agrupación de controles relacionados (<fieldset> y <legend>): cuando tengas un grupo de controles relacionados (como varios botones de radio para una misma pregunta), agrúpalos con <fieldset> y proporciona un título para el grupo con <legend>.
    <fieldset>
    <legend>Tipo de notificación preferida:</legend>
    <input type="radio" id="email" name="notificacion" value="email">
    <label for="email">Correo electrónico</label>
    <br>
    <input type="radio" id="sms" name="notificacion" value="sms">
    <label for="sms">SMS</label>
    </fieldset>
  3. Indicación de campos obligatorios: marca claramente los campos obligatorios. Puedes usar un asterisco (*) visible junto a la etiqueta y, además, el atributo required en el control del formulario. Para mayor robustez, considera aria-required="true".
    <label for="correo">Correo electrónico <span aria-hidden="true">*</span>:</label>
    <input type="email" id="correo" name="correo" required aria-required="true">
  4. Instrucciones y mensajes de error útiles:
    • Proporciona instrucciones claras donde sea necesario (por ejemplo, formato esperado para una fecha).
    • Los mensajes de error deben ser específicos, fáciles de entender y estar asociados programáticamente al control correspondiente, a menudo usando aria-describedby para que los lectores de pantalla los anuncien. El foco debería moverse al primer campo con error tras un intento de envío fallido.
  5. Navegación y operativa por teclado: asegúrate de que se puede acceder y operar cada control del formulario usando solo el teclado, en un orden lógico.
  6. Contraste y estilos de foco: todos los controles, etiquetas y mensajes deben tener suficiente contraste de color. El indicador de foco debe ser claro.
  7. Evita usar «placeholder» como etiqueta: el texto del atributo placeholder desaparece al escribir y no es un sustituto accesible para una <label>. Úsalo solo para sugerencias o ejemplos de formato.

Prestando atención a estos puntos, tus formularios serán mucho más usables para personas con diversas capacidades.

¿Tienes alguna duda o pregunta?Envía el formulario y procuraré darle respuesta
Formulario de pregunta
Responsable » Jose Ramón Bernabeu Guillem. Finalidad » Ponernos en contacto. Legitimación » Tu consentimiento al marcar la casilla verificación. Destinatarios » Los datos que proporciones estarán ubicados en los servidores de LucusHost, proveedor de hosting de este sitio. Derechos » por supuesto tendrás derecho, entre otros, a acceder, rectificar, limitar y suprimir tus datos.
Si creees que esto puede ser de utilidad a alguien más, pues... compártelo que es gratis 🙂
Sitio alojado en un servidor verde según The Green Web Foundation

LucusHost, el mejor hosting

Aviso legal | Condiciones de contratación | Política de privacidad | Política de cookies
© 2017-2025 · Jose R. Bernabeu ·
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram