Blog Tinux Net

Tailwindcss

Mi idea es tener el Estatico para las consultas rapidas y frecuentes, y los posta para complementarlo, con sentencias mas complejas.

  • Publicado en

    Tailwind 4.1

    Evolucion al nuevo modelo.

    Importante: Hay muchos cambios en la estructura y en la forma de ejecutar los scripts para la renderizacion del css

    Mucho mas facil de realizar. Pero tambien exige un minimo de organizacion para le desarrollador

    Instalacion.

    • Install Tailwind CSS Install tailwindcss and @tailwindcss/cli via npm.
    npm install tailwindcss @tailwindcss/cli
    
    • Configurar el archivo de iniciacion: Importar Tailwind en tu CSS Añadir el @import "tailwindcss"; importar a tu estructura del fichero CSS.

    El oficial que se sugiere es ~/src/input.css aunque personalmente lo configuro en mi estructura, ~/assets/src/tailwind.css

    @import "tailwindcss";
    
    • Iniciar el proceso de compilación (renderizado) de Tailwind CLI Ejecutar la herramienta CLI para escanear los archivos fuente en busca de clases y crear el CSS.

    Los ficheros de entrada y salida son los de mis estructuras habituales de assets

    El oficial:

    npx @tailwindcss/cli -i ./src/input.css -o ./src/output.css --watch
    

    El de mi infraestructura:

    npx @tailwindcss/cli -i ./assets/src/tailwind.css -o ./assets/css/styles.css --watch
    

    El --watch es el que renderiza y y evalua en tiempo real si se ha producido cualquie modigicacion en las paginas o archivos dependientes de los css.

    • Empezaa a usar Tailwind en el HTML Añade tu archivo CSS compilado al y empieza a usar las clases de utilidad de Tailwind para dar estilo a tu contenido.
    <!doctype html>
    <html>
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <link href="./assets/css/styles.css" rel="stylesheet">
    </head>
    <body>
      <h1 class="text-3xl font-bold underline">
        Hello world!
      </h1>
    </body>
    </html>
    
  • Publicado en

    Sí, en Tailwind CSS puedes reducir el tamaño de la fuente de un elemento dentro de un contenedor div utilizando las clases de utilidad para el tamaño de la fuente (text-*). Tailwind ofrece una amplia gama de tamaños de fuente predefinidos, pero también puedes personalizar el tamaño de la fuente en unidades específicas (como px, rem, em, etc.) utilizando valores arbitrarios.


    1. Usar tamaños de fuente predefinidos de Tailwind

    Tailwind incluye clases como text-sm, text-base, text-lg, etc., que representan tamaños de fuente predefinidos. Por ejemplo:

    <div class="container mx-auto p-4">
      <p class="text-lg">Este es un texto con tamaño de fuente grande.</p>
      <p class="text-sm">Este es un texto con tamaño de fuente pequeño.</p>
    </div>
    
    • text-lg: Tamaño de fuente grande (1.125rem).
    • text-sm: Tamaño de fuente pequeño (0.875rem).

    2. Reducir la fuente en unidades específicas (valores arbitrarios)

    Si necesitas un tamaño de fuente específico que no está predefinido en Tailwind, puedes usar la notación de valores arbitrarios con corchetes ([]). Por ejemplo, para reducir la fuente en 2px:

    <div class="container mx-auto p-4">
      <p class="text-[14px]">Este texto tiene un tamaño de fuente de 14px.</p>
    </div>
    
    • text-[14px]: Define un tamaño de fuente personalizado de 14px.

    3. Reducir la fuente en relación con el tamaño base

    Si deseas reducir la fuente en relación con el tamaño base de Tailwind (1rem o 16px), puedes usar unidades relativas como rem o em. Por ejemplo:

    <div class="container mx-auto p-4">
      <p class="text-[0.875rem]">Este texto tiene un tamaño de fuente de 0.875rem (14px).</p>
    </div>
    
    • text-[0.875rem]: Define un tamaño de fuente personalizado de 0.875rem (equivalente a 14px).

    4. Reducir la fuente en dispositivos específicos (responsive)

    Puedes combinar las clases de tamaño de fuente con las clases responsivas de Tailwind para ajustar el tamaño de la fuente en diferentes dispositivos. Por ejemplo:

    <div class="container mx-auto p-4">
      <p class="text-base md:text-sm lg:text-[12px]">
        Este texto cambia de tamaño en diferentes dispositivos.
      </p>
    </div>
    
    • text-base: Tamaño de fuente base en móviles (1rem o 16px).
    • md:text-sm: Tamaño de fuente pequeño en tablets (0.875rem o 14px).
    • lg:text-[12px]: Tamaño de fuente personalizado en pantallas grandes (12px).

    5. Reducir la fuente usando em o %

    Si prefieres usar unidades relativas como em o %, también puedes hacerlo con valores arbitrarios:

    <div class="container mx-auto p-4">
      <p class="text-[0.8em]">Este texto tiene un tamaño de fuente de 0.8em.</p>
      <p class="text-[80%]">Este texto tiene un tamaño de fuente del 80%.</p>
    </div>
    
    • text-[0.8em]: Reduce la fuente al 80% del tamaño base.
    • text-[80%]: Reduce la fuente al 80% del tamaño base.

    6. Ejemplo completo

    Aquí tienes un ejemplo completo que combina todo lo anterior:

    <div class="container mx-auto p-4">
      <p class="text-lg md:text-base lg:text-[14px]">
        Este texto es responsive y se reduce en dispositivos más pequeños.
      </p>
      <p class="text-[12px]">
        Este texto tiene un tamaño fijo de 12px.
      </p>
    </div>
    

    Resumen:

    • Usa clases predefinidas como text-sm, text-base, etc., para tamaños de fuente comunes.
    • Usa valores arbitrarios (text-[14px], text-[0.875rem], etc.) para tamaños personalizados.
    • Combina con clases responsivas (md:text-sm, lg:text-[12px], etc.) para ajustar el tamaño en diferentes dispositivos.

    Este enfoque te permite controlar el tamaño de la fuente de manera precisa y flexible en Tailwind CSS. ¡Espero que te sea útil! 😊

  • Publicado en

    Para crear una imagen responsive con Tailwind CSS, el método más adecuado es utilizar las utilidades de Tailwind para ajustar el tamaño, la posición y el comportamiento de la imagen en diferentes dispositivos. Aquí te explico el enfoque más eficiente y moderno:


    Método recomendado:

    1. Usar w-full para el ancho:

      • Esto hace que la imagen ocupe el 100% del ancho de su contenedor, adaptándose al tamaño de la pantalla.
    2. Usar h-auto para la altura:

      • Esto mantiene la proporción de la imagen, evitando que se distorsione.
    3. Usar object-cover o object-contain:

      • object-cover: La imagen cubre todo el espacio disponible, recortándose si es necesario.
      • object-contain: La imagen se ajusta completamente dentro del contenedor, sin recortarse.
    4. Ajustar el tamaño máximo con max-w-*:

      • Limita el tamaño máximo de la imagen para que no se vea demasiado grande en pantallas grandes.
    5. Usar clases responsivas:

      • Tailwind permite aplicar estilos diferentes dependiendo del tamaño de la pantalla (por ejemplo, md:w-1/2 para tablets).

    Código de ejemplo:

    <img
      src="ruta/a/tu/imagen.jpg"
      alt="Descripción de la imagen"
      class="w-full h-auto max-w-full md:max-w-3/4 lg:max-w-1/2 object-cover"
    >
    

    Explicación del código:

    1. w-full: La imagen ocupa el 100% del ancho de su contenedor.
    2. h-auto: La altura se ajusta automáticamente para mantener la proporción de la imagen.
    3. max-w-full: Limita el ancho máximo al 100% del contenedor.
    4. md:max-w-3/4: En tablets (≥ 768px), el ancho máximo es el 75% del contenedor.
    5. lg:max-w-1/2: En pantallas grandes (≥ 1024px), el ancho máximo es el 50% del contenedor.
    6. object-cover: La imagen cubre todo el espacio disponible, recortándose si es necesario.

    Ejemplo completo con contenedor:

    Si quieres que la imagen esté dentro de un contenedor y se comporte de manera responsive, puedes hacer lo siguiente:

    <div class="container mx-auto px-4">
      <img
        src="ruta/a/tu/imagen.jpg"
        alt="Descripción de la imagen"
        class="w-full h-auto max-w-full md:max-w-3/4 lg:max-w-1/2 object-cover rounded-lg shadow-lg"
      >
    </div>
    
    • container: Limita el ancho máximo del contenedor y lo centra.
    • mx-auto: Centra el contenedor horizontalmente.
    • px-4: Añade un padding horizontal para evitar que la imagen toque los bordes en móviles.
    • rounded-lg: Añade bordes redondeados.
    • shadow-lg: Añade una sombra para mejorar el diseño.

    Alternativa: Usar srcset para imágenes responsive (HTML nativo)

    Si quieres optimizar el rendimiento cargando diferentes versiones de la imagen según el tamaño de la pantalla, puedes usar el atributo srcset junto con Tailwind:

    <img
      src="ruta/a/tu/imagen-small.jpg"
      srcset="
        ruta/a/tu/imagen-small.jpg 480w,
        ruta/a/tu/imagen-medium.jpg 800w,
        ruta/a/tu/imagen-large.jpg 1200w
      "
      sizes="(max-width: 640px) 100vw, (max-width: 1024px) 75vw, 50vw"
      alt="Descripción de la imagen"
      class="w-full h-auto object-cover rounded-lg shadow-lg"
    >
    
    • srcset: Define diferentes versiones de la imagen para diferentes tamaños de pantalla.
    • sizes: Indica cómo se debe escalar la imagen en diferentes breakpoints.

    Resumen:

    • Usa w-full y h-auto para que la imagen sea responsive.
    • Ajusta el tamaño máximo con max-w-*.
    • Usa object-cover o object-contain para controlar cómo se ajusta la imagen.
    • Aplica clases responsivas (md:, lg:) para ajustar el comportamiento en diferentes dispositivos.

    Este método garantiza que tu imagen se vea bien en todos los dispositivos sin distorsionarse ni perder calidad. ¡Espero que te sea útil! 😊