Dominar las bases de la accesibilidad

1

¿Listo para hacer la web un mejor lugar para todos sus usuarios?

2

Conociendo la importancia de la accesibilidad web

3

Aprendiendo sobre WCAG y sus criterios de conformidad

4

Profundizando los 12 criterios de conformidad

5

Los 4 principios de WCAG

6

Tecnología Asistivas - cuáles son y cómo funcionan

Presentar el proyecto

7

Instalación del proyecto y primeros pasos

Evaluar la accessibilidad de sitios web

8

Pruebas automáticas con Lighthouse

9

Pruebas con simuladores de discapacidades visuales

10

Pruebas manuales con tu teclado

11

Pruebas manuales con lectores de pantalla

12

Pruebas manuales con VoiceOver

Refactorizar HTML para ser mas accessible

13

¿Qué es el HTML semántico y por qué es importante?

14

Usando HTML semántico en el header de nuestro sitio

15

Usando HTML semántico en el contenido principal de nuestro sitio

16

Usando HTML semántico en footer de nuestro sitio

17

ARIA - Accessible Rich Internet Applications

18

ARIA roles

19

ARIA properties

20

ARIA states

21

Overview del proyecto con los retos resueltos

Utilizar CSS para aumentar la acessibilidad de un sitio web

22

Contrastes de color

23

Iconos

24

Skip Links

25

Estilos de foco y hover

26

Overview retos resueltos con CSS

Extender la accesibilidad usando JavaScript

27

Manejando el foco del teclado - botones

28

Manejando el foco del teclado - el carousel

29

Coordinando el foco del teclado con el foco de lectores de pantallas

30

Manejando modales

31

Mejorando la accesibilidad con teclado de nuestro modal

32

Ayudando a nuestros usuarios a interactuar correctamente con el sitio

33

Validando formularios

34

Manejando cambios dinámicos

Conclusión

35

Siguientes pasos

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

13 Días
8 Hrs
52 Min
33 Seg

Validando formularios

33/35
Recursos

Aportes 22

Preguntas 4

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

En este curso también aprendí que parágrafo es otra manera de decir párrafo xD En México nunca lo habia escuchado.

todos los front deberia ver este curso!

El método preventDefault () cancela el evento si es cancelable, lo que significa que la acción predeterminada que pertenece al evento no ocurrirá.

hay un atributo que ayuda a validar los formulario, el atributo es require (No recibe ningún valor)
este atributo hace que al momento de hacer un submit, si el input en el que pusiste el require esta vacío, lo enfoca y nos avisa de forma automática que es obligatorio llenarlo.

<label for="nombre">Nombre</label>
<input type="text" name="nombre" id="nombre" require />

Este curso es Oro realmente es increible como se debe tener en cuenta la accesibilidad

Termine las validaciones de los otros input:

function Validacion(e) {
  e.preventDefault();

  let Trues = 0;

  const Name = document.getElementById("Nombre").value;
  console.log(Name);

  if (Name === "") {
    document.querySelector("#Nombre__Error").innerHTML =
      "! Para enviar el formulario, debes poner tu nombre";
  } else {
    document.querySelector("#Nombre__Error").style.display = "none";
    Trues++;
  }

  const Correo = document.getElementById("Correo").value;
  console.log(Name);

  if (Correo === "") {
    document.querySelector("#Email__Error").innerHTML =
      "! Para enviar el formulario, debes poner tu correo";
  } else {
    document.querySelector("#Email__Error").style.display = "none";
    Trues++;
  }

  const Mensaje = document.getElementById("Mensaje").value;
  console.log(Name);

  if (Mensaje === "") {
    document.querySelector("#Mensaje__Error").innerHTML =
      "! Para enviar el formulario, debes poner tu Mensaje";
  } else {
    document.querySelector("#Mensaje__Error").style.display = "none";
    Trues++;
  }

  if (Trues === 3) {
    showNotification();
  }
}

Si todo esta en blanco muestra el mensaje, a medida que va llenando pero siguen campos vacios oculta el mensaje a los que ya lleno y al enviar hace el reset();

El atributo de “aria-required” se lo colocas al input y para las personas usando lectores de pantalla, al no llenar un campo, el foco va a ese campo que no se llenó y le dice al usuario qué campo es y que es obligatorio

Para los input del correo y del mensaje:

<input type="text" aria-label="Correo" required/>
<input type="text" aria-label="Caja de texto para mensaje" required/>

Para manejar todos los span de la misma manera en el CSS:

.span-error {
  color: var(--blanco);
  font-family: var(--secondary-font);
}

Y en JS:

function validateForm(e) {
  e.preventDefault();
  const nameField = document.getElementById('name')
  if (nameField.value === '') {
    document.getElementById('name-error').innerHTML = '¡El nombre no puede estar vacío!'
    document.getElementById('email-error').innerHTML = '¡El correo no puede estar vacío!'
    document.getElementById('message-error').innerHTML = '¡El mensaje no puede estar vacío!'
  }else{
    showNotification()
  }
}

Se que anteriormente se dijo que no se debe expresar significado con color, pero ese mensaje de validación en blanco me descoloca completamente.
¿Habrá alguna manera de hacer que si parezca un mensaje de error y no un texto cualquiera?

Estoy teniendo un problema con el preventDefault y es que también previene el mensaje de error cuando le colocas el atributo “required” a un input y la persona no introduce nada ahí.
.
El preventDefault está previniendo que la pagina no se refresque pero también está previniendo que se muestre ese mensaje
.
Alguien sabe como resolverlo?

Gracias profesora, considero que sería muy bueno hacer aún más accesible su aportación.
Pudiéramos detectar el error y mandarlo directamente el Input correspondiente y al momento de enviarlo y que todo sea correcto, enviar el foco al mensaje de enviado, que yo lo situaría debajo del formulario, para yo como usuario saber siempre que lo hice bien, por que quizá el tiempo de espera del mensaje es muy corto.

Me sorprende su pronunciación en ingles 😮

La forma de validad if(nameField === '') queda un poco corta porque solo abarca un string vacio, entonces tal vez sea mejor usar los falsy values y el atributo required para un mejor control

Me gustó mucho como implementó las notificaciones!

El sitio ha cambiado muchísimo, viendo cómo empezó! 😮

Cuando tengan un formulario que traiga información de internet, sería buena idea informarle a la persona que espere mientras carga la información 😄

Validando un formulario ayudamos a nuestros usuarios a entender el formulario y les brindamos instrucciones de que requerimos de ellos en ese momento, si cometen errores les comunicamos el error y les damos una opción de corregirlos.

Si quieren controlar el valor de los inputs de otra forma:

$form.addEventListener('submit', e => {
  e.preventDefault();
  let list = [];
  list.push(e.target.name.value);
  list.push(e.target.email.value);
  list.push(e.target.content.value);
  console.log(list);
});
nezahualcóyotl
Pienso que al poner el error de color blanco puede que las personas que no pueden visualizar el color no lo noten, por lo que no sea necesario, pero al hacer eso estamos quitando accesibilidad al usuario promedio que si puede ver los colores, por tanto deberia cambiarse ese color por otro que si priorize el significado del color. Estuve probando y al parecer el rojo no tiene buen contraste en este caso asi que le puse un naranja. ![](https://static.platzi.com/media/user_upload/image-a78b212f-aa94-4244-8124-237e081db093.jpg)

If you want, leave a message with this form.