¡Comenzamos nuestra exploración de Tailwind CSS! Un marco de trabajo que está revolucionando el desarrollo frontend con su enfoque único hacia el diseño. Vamos a desglosar tres conceptos fundamentales: Responsive Design, Mobile First y Utility First. Estos conceptos son la columna vertebral de la ideología de Tailwind CSS y te ayudarán a entender cómo mejorar significativamente la experiencia del usuario en diferentes dispositivos.
¿Cómo funciona el diseño responsive en Tailwind CSS?
El diseño responsive es primordial en el desarrollo web actual. Nos asegura que las aplicaciones web se vean bien en cualquier dispositivo, orientación o plataforma. Tailwind CSS simplifica este proceso proporcionando cuatro breakpoints predeterminados:
Default: Ideal para dispositivos móviles muy pequeños.
SM (pequeño): Dispositivos móviles más grandes, ancho a partir de 640 píxeles.
MD (mediano): Tablets pequeñas o dispositivos grandes con un ancho alrededor de 768 píxeles.
LG (grande): Laptops o tablets grandes, empezando en los 1024 píxeles.
XL (extra grande): Computadoras de escritorio o tablets muy grandes, desde los 1280 píxeles.
El uso adecuado de breakpoints asegura que tu sitio se vea impecable sin importar el dispositivo que se utilice.
¿Qué es el enfoque Mobile First?
Vivimos en un mundo donde el celular es rey. A pesar de que como desarrolladores usamos más las computadoras, los usuarios finales emplean principalmente sus dispositivos móviles. Aquí es donde entra el enfoque Mobile First.
Este enfoque nos anima a diseñar primero para dispositivos móviles, garantizando que la experiencia sea óptima en estos dispositivos. Con esto en mente:
Prioriza la funcionalidad y el estilo para móviles antes que cualquier otro tamaño de pantalla.
Simplifica el diseño a lo esencial.
Asegura una navegación fácil y rápida en pantallas pequeñas.
Adoptar el Mobile First no solo mejora la experiencia del usuario sino que optimiza el proceso de desarrollo.
¿Qué es el enfoque Utility First?
El tercer pilar de Tailwind CSS es el enfoque Utility First, una forma innovadora de nombrar y crear clases de estilo que son descriptivas de su función. A diferencia del modelo tradicional, donde se crean clases de estilo con nombres genéricos y múltiples responsabilidades, las utilidades en Tailwind CSS permiten una claridad inmediata sobre la función que cumplen.
rounded-lg: Aplica bordes redondeados de tamaño grande.
shadow-xl: Añade una sombra grande, lo que otorga un efecto elevado al elemento.
Este ejemplo demuestra cómo, a través de nombres de clases claros y específicos, puedes generar interfaces limpias y coherentes, sin la necesidad de revisar interminables hojas de estilo.
Estos fundamentos no solo mejoran la organización del código sino que agilizan el trabajo de diseño y desarrollo. Familiarizarse con estos conceptos asegura un aprovechamiento total de lo que Tailwind CSS tiene para ofrecer en el mundo del desarrollo frontend. Sigue adelante en tu aprendizaje, ya que con cada paso que des, te acercas a dominar esta poderosa herramienta. ¡Ánimo y a programar!
La web como la conocemos, hoy en día, no es una tecnología pensando en un UX o User Experience generando, desafortunadamente, que muchos de los sitio web no estén optimizados para los dispotivos móviles.
Definido por Ethan Marcotte, es una filosofía que responde a las necediades de los usuarios y a los dispositivos que estamos usando.
Mobile First
Como su nombre sugiere, significa que iniciaremos con el diseño de móviles y expandiendo éstas características para crear una verión en tableta o escritorio/web tradicional.
Cabe mencionar que esta filosofía no es sinónimo de limitación, por lo que tenemos que tener el mismo contenido tanto en escritorio como en móvil. Google describe las best practices en su sitio.
Utility first
CSS posee diferentes tipos de paradigmas para abstraer un diseño, como BEM descrito por Tailwind en ésta sección:
<div class="chat-notification"><div class="chat-notification-logo-wrapper"><img class="chat-notification-logo" src="/img/logo.svg" alt="ChitChat Logo"></div><div class="chat-notification-content"><h4 class="chat-notification-title">ChitChat</h4><p class="chat-notification-message">You have a new message!</p></div></div>
Sin embargo, llega a ser muy complicado establecer un armonía entre desarrolladores-diseñadores si no hay una concesión de sintaxis o linter. Por ello, Tailwind establece su propio orden con el objetivo:
No invertir tiempo en inventar nombres para las clases
Detener el crecimiento, sin fin, de CSS
Simplificando y asegurando los cambios al CSS
Herramienta para desarrollo 🚀
Como desarrolladores necesitamos herramientas que nos permita exlotar nuestra creatividad al máximo por ellos exiten algunas DevTools:
Safari for Developers
Chrome o Chrome for Developers
Y otras más ... 🤯
Buen resumen
En texto para cortar y pegar XD
Breakpoint -> Tamaño
Default : Mayor a 0px
sm : Mayor a 640px -> Mobil
md : Mayor a 768px -> Tablet
lg : Mayor a 1024px -> Laptop
xl : Mayor a 1280px -> Table grandes o computadora de escritorio
Responsive Design: Es una técnica para asegurar que la aplicación se vea bien en diferentes dispositivos.
Mobile First: Prioriza el desarrollo pensando en los dispositivos móviles.
Utility First Css: Construir componentes a partir de clases con nombres descriptivos
Apuntes de esta clase:
2.2 Responsive Design, Mobile First and Utility First
Los 3 conceptos básicos de TailwindCSS:
Responsive Design: que una aplicación se vea bien dependiendo del dispositivo.
En Tailwind hay 4 breakpoints definidos y uno por default:
default: mayor a 0px.
sm: mayor a 640px.
md: mayor a 768px.
lg: mayor a 1024px
xl: mayor a 1280px.
Mobile First: el dispositivo que se utiliza más es el celular, por lo cual tailwind da mayor relevancia a iniciar el desarrollo desde las pantallas de dispositivos móviles.
Utility First: es la forma en la que se nombran y se crean las clases de estilos, que son clases descriptivas de las utilidad que nos dan.
👍
Browser for Developers:
De gran utilidad, hace poco lo uso y es fabuloso
Tamaños en Tailwind
Tambien esta una alternativa a Sizzy, se llama Responsively. Es free y open source. ;)
Solo yo me pongo nervioso cuando el profe dice mobility y no mobile?
es una lastima que no pueda contratar sizzy (que me recuerda al personaje de La hora Pico), pero para esta aventura del front, me va a servir muchisimo
Yo recomiendo Polypane, se me hizo una herramienta muy buena.
https://polypane.app
Tambien pueden conseguir un año gratis con github student pack
Les soy sincero, estoy un poco perdido, pero tengo la fe que voy a aprender esto a como dé lugar.
Excelente Javier por estas infografías.
Este programa te permite realizar la misma tarea de visualizar diferentes breakpoints de una página web.