Chuck's Academy

CSS Básico

Fundamentos del diseño responsivo en CSS

El diseño web responsivo es un enfoque moderno que garantiza que las páginas web se vean y funcionen bien en una amplia variedad de dispositivos y tamaños de pantalla, desde teléfonos móviles hasta monitores de escritorio. En este capítulo, aprenderás los conceptos básicos y técnicas de CSS para crear sitios web que se adapten a diferentes resoluciones de pantalla.

¿Qué es el diseño responsivo?

El diseño responsivo se basa en la idea de crear una sola página web que pueda adaptarse dinámicamente a diferentes tamaños de pantalla sin que el contenido se desborde o se vea mal. Esto mejora la accesibilidad y la experiencia del usuario, independientemente del dispositivo que esté utilizando.

Aquí se muestra una comparación visual de una página web en un dispositivo móvil, una tablet y una pantalla de escritorio, mostrando cómo se adapta el contenidoAquí se muestra una comparación visual de una página web en un dispositivo móvil, una tablet y una pantalla de escritorio, mostrando cómo se adapta el contenido

Uso de unidades flexibles

Para lograr un diseño responsivo, debemos evitar el uso de unidades fijas como píxeles, y optar por unidades flexibles que se ajusten a diferentes tamaños de pantalla.

Unidades relativas

Las unidades relativas como porcentajes (%), em, rem, y vw/vh permiten crear un diseño que se escala de manera proporcional a la pantalla del dispositivo.

  1. Porcentajes (%): Se usan para definir anchos y márgenes relativos al tamaño del contenedor padre.

    css
    "En este ejemplo, el ancho del div será el 50 por ciento del tamaño de su contenedor padre, lo que permite que el tamaño se ajuste en diferentes pantallas."
  2. Em y Rem: Se utilizan para establecer tamaños de texto, márgenes y rellenos basados en el tamaño de la fuente del contenedor (em) o del elemento raíz (rem).

    css
    "Aquí usamos rem para que el tamaño de la fuente del párrafo sea 1.2 veces el tamaño de la fuente raíz, lo que permite que el texto escale proporcionalmente."
  3. Vista de ancho y alto (vw y vh): Estas unidades se basan en el tamaño de la ventana del navegador. 1vw es igual al 1% del ancho de la ventana, y 1vh es igual al 1% de la altura.

    css
    "Con esta regla, el alto de la sección ocupará el 100 por ciento de la altura visible del navegador."

Metaetiqueta viewport

Para garantizar que una página web sea completamente responsiva, es importante incluir la siguiente metaetiqueta en el archivo HTML. Esto le indica al navegador cómo debe escalar y mostrar la página en dispositivos móviles.

html
"Este código establece que el ancho de la página será igual al ancho del dispositivo y establece el nivel de zoom inicial en 1."

Esta imagen muestra una captura de pantalla del código fuente HTML con la metaetiqueta viewport resaltada.Esta imagen muestra una captura de pantalla del código fuente HTML con la metaetiqueta viewport resaltada.

Media Queries

Las media queries permiten aplicar diferentes estilos CSS en función de las características del dispositivo, como el ancho de la pantalla. Son la herramienta clave para lograr un diseño responsivo.

Ejemplo de media query básica

Las media queries permiten definir diferentes reglas CSS según el ancho de la pantalla. A continuación, se muestra un ejemplo donde se cambia el color de fondo dependiendo del tamaño de la pantalla.

css
"En este ejemplo, si el ancho de la pantalla es de 768 píxeles o menos, el fondo del body será gris claro. Si es mayor, el fondo será blanco."

Breakpoints comunes

Un breakpoint es el punto en el cual el diseño cambia para adaptarse mejor a una nueva resolución. Aquí algunos breakpoints comunes que suelen usarse en media queries:

  • 320px: Tamaño de pantalla de teléfonos pequeños.
  • 768px: Tamaño de pantalla de tabletas.
  • 1024px: Pantalla de escritorio.
  • 1440px y más: Pantallas grandes o de alta resolución.
css
"Este es un ejemplo típico de uso de media queries con breakpoints. Si la pantalla tiene 768 píxeles o menos, se aplicarán los estilos para tablets y teléfonos. Si la pantalla es más grande, se aplicarán los estilos para escritorio."

Diseño mobile-first

El enfoque mobile-first significa diseñar primero para dispositivos móviles y luego agregar estilos adicionales para dispositivos más grandes. Este enfoque es ideal porque los teléfonos móviles son ahora los dispositivos más comunes para navegar por internet.

css
"Aquí, los estilos base son para dispositivos móviles con un ancho del 100 por ciento. Luego, para pantallas más grandes, como tablets o computadoras, cambiamos el ancho a 50 por ciento y aumentamos el padding."

 Se muestra un ejemplo visual que muestra cómo cambia el diseño mobile-first en dispositivos móviles y de escritorio Se muestra un ejemplo visual que muestra cómo cambia el diseño mobile-first en dispositivos móviles y de escritorio

Imágenes responsivas

Las imágenes también deben ser responsivas para adaptarse al ancho de diferentes pantallas. Esto se puede lograr usando propiedades CSS como max-width o utilizando elementos HTML como <picture> y srcset para cargar diferentes imágenes según la resolución de la pantalla.

Ejemplo con CSS

css
"Con max-width establecido en 100 por ciento, la imagen nunca será más ancha que su contenedor y el alto se ajustará automáticamente para mantener las proporciones."

Ejemplo con HTML y srcset

html
"Aquí usamos srcset para que el navegador cargue diferentes imágenes dependiendo del tamaño de la pantalla. Para pantallas más grandes, como 1024 píxeles de ancho, se cargará una imagen de mayor resolución."

Conclusión

En este capítulo, hemos aprendido los fundamentos del diseño responsivo, incluyendo el uso de unidades flexibles, la metaetiqueta viewport, media queries y la creación de imágenes responsivas. Estas técnicas te ayudarán a crear páginas web que se vean bien en cualquier dispositivo. En el próximo capítulo, exploraremos cómo mejorar la navegación en sitios responsivos, lo que es fundamental para la usabilidad en dispositivos móviles.


Pregúntame lo que sea