Imágenes y multimedia


El texto carga con buena parte de una página web, pero no con toda. Las fotos, los diagramas, las ilustraciones, los clips de video y el sonido también son contenido, y HTML tiene elementos para cada uno de ellos. Este capítulo trata sobre el marcado que pone medios en una página: cómo apuntar a un archivo de imagen, cómo describirlo para las personas que no pueden verlo, y cómo servir el archivo correcto a la pantalla correcta sin desperdiciar los datos de nadie.
El elemento de imagen
Pones una imagen en una página con el elemento de imagen, que se escribe <img>. No tiene contenido ni etiqueta de cierre. En su lugar, le dices dos cosas mediante atributos: qué archivo mostrar y de qué se trata la imagen.
<img src="golden-retriever.jpg" alt="A golden retriever sitting in tall grass">src es la fuente: la ruta o dirección web del archivo de imagen. alt es el texto alternativo: una descripción breve de la imagen en palabras. Si la imagen no carga, o si alguien está escuchando la página con un lector de pantalla en lugar de mirarla, el texto de alt es lo que recibe esa persona. Así que escríbelo como si le estuvieras describiendo la imagen a un amigo por teléfono.
src, que es el archivo a mostrar, y alt, que describe la imagen en palabras. Escribe el alt como si le estuvieras contando a alguien por teléfono lo que hay en la foto. Es la parte que más se salta la gente, y es la parte que más importa. Imágenes responsivas
Una foto que se ve nítida en una laptop puede ser mucho más pesada de lo que necesita un teléfono. Enviar ese archivo a tamaño completo a una pantalla pequeña desperdicia los datos de quien visita la página y hace que cargue más lento. HTML te permite ofrecerle al navegador varias versiones de la misma imagen y dejar que él elija la que corresponde.
No necesitas esto para cada imagen mientras estás empezando. Un solo <img> con un archivo razonable está bien. Pero ayuda saber que la idea existe: la misma foto puede venir en varios tamaños, y el navegador elige.
<img src="beach-800.jpg" alt="Waves rolling onto a quiet beach at sunset"><img> simple está bien. La opción está ahí para cuando una página empieza a sentirse pesada en el celular. Video y audio
HTML puede reproducir video y sonido sin necesidad de complementos. Para un clip, usas el elemento <video>; para el sonido, <audio>. Agrega el atributo controls y el navegador te da un botón de reproducción, una línea de tiempo y un control de volumen sin esfuerzo adicional.
<video src="tutorial.mp4" controls></video>
<audio src="podcast-episode.mp3" controls></audio>A diferencia de una imagen, estos tienen etiqueta de cierre, porque puedes poner texto de respaldo o configuraciones adicionales entre la etiqueta de apertura y la de cierre. Lo más importante de recordar al principio: incluye siempre controls, o quien visite la página no tendrá forma de darle a reproducir.
<video> reproduce un clip y <audio> reproduce sonido, sin necesidad de complementos. Agrega controls o no habrá botón de reproducción y quien visite la página se quedará sin poder hacer nada. Ambos tienen etiqueta de cierre, porque puedes meter configuraciones y texto de respaldo dentro de ellos, a diferencia de una imagen. Tamaño, carga diferida y rendimiento
Cuando una imagen carga, puede empujar el resto de la página. Estás leyendo un párrafo, una foto termina de cargar arriba de él, y de repente el texto salta hacia abajo. Ese salto es molesto, y puedes evitarlo: dile al navegador de antemano el tamaño de la imagen con width y height.
<img src="team-lunch.jpg" alt="The team sharing lunch on the office balcony"
width="800" height="600">Con esos números, el navegador reserva el espacio correcto antes de que la imagen llegue, así que nada salta cuando aparece. Le das las dimensiones reales en píxeles del archivo, y el CSS igual puede cambiarle el tamaño en pantalla.
width y un height y la página deja de moverse mientras las fotos cargan. Usa el tamaño real en píxeles del archivo; el CSS igual puede achicarlo en pantalla. Este solo hábito arregla el problema de carga más molesto que existe. 
