¿Por qué preferir <button> a un <div onclick>?
Opciones
- Es más corto y rápido de escribir en HTML
- Soporte de teclado, foco y rol para lectores de pantalla gratis (Opción correcta)
- Un
divno se puede estilizar con CSS - Los botones cargan más rápido que los divs en todos los navegadores
Respuesta
El soporte nativo de teclado, el foco y el rol correcto para lectores de pantalla vienen gratis
Por qué
A un <button> se llega con Tab, se activa con Enter o Espacio, y los lectores de pantalla lo anuncian como 'botón', todo automáticamente.
Un <div> clicable no hace nada de eso; quienes usan teclado o lector de pantalla no pueden usarlo salvo que añadas tú role, tabindex y manejadores de teclado.
Usar el elemento HTML adecuado para su propósito se llama HTML semántico.
Recuerda
Usa botones, enlaces y labels reales: accesibilidad gratis.