Chuck's Academy

Flexbox en CSS

Propiedad flex-grow, flex-shrink y flex-basis

Las propiedades flex-grow, flex-shrink y flex-basis en Flexbox se usan para controlar cómo se distribuye el espacio dentro de un contenedor flex. Estas propiedades permiten ajustar el tamaño de los elementos flexibles de una manera mucho más precisa y dinámica.

Propiedad flex-grow

La propiedad flex-grow determina cuánto puede crecer un elemento en relación con los otros elementos dentro del mismo contenedor Flex, cuando hay espacio adicional disponible.

  • Valor por defecto: 0 (El elemento no crecerá)

Uso de flex-grow

css

Ejemplo

html

[Placeholder: Imagen que muestra una fila de elementos flexibles donde el segundo elemento crece el doble que el primero y el tercero]

Propiedad flex-shrink

La propiedad flex-shrink determina cuánto puede encogerse un elemento en relación con los otros elementos dentro del mismo contenedor Flex, cuando hay falta de espacio.

  • Valor por defecto: 1 (El elemento puede encogerse si es necesario)

Uso de flex-shrink

css

Ejemplo

html

[Placeholder: Imagen que muestra una fila de elementos flexibles dentro de un contenedor 200px de ancho. Los elementos se encogen para ajustarse al ancho disponible, y el segundo se encoge más que el primero y el tercero]

Propiedad flex-basis

La propiedad flex-basis establece la base flexible, es decir, el tamaño inicial de un elemento antes de que se distribuyan los espacios adicionales o se apliquen los ajustes de flex-grow y flex-shrink.

  • Valor por defecto: auto (El tamaño del contenido)

Uso de flex-basis

css

Ejemplo

html

[Placeholder: Imagen que muestra una fila de elementos flexibles con tamaños base específicos asignados, donde el segundo elemento tiene una base de 200px y los otros dos tienen 100px]

Combinación de flex-grow, flex-shrink y flex-basis

Estas propiedades se pueden combinar para lograr un control más preciso del comportamiento de los elementos flexibles dentro del contenedor.

Ejemplo Completo

html

[Placeholder: Imagen que muestra una fila de elementos flexibles dentro de un contenedor, con comportamientos variados de crecimiento, encogimiento y tamaño base]

Resumen

  • flex-grow: Controla cuánto puede crecer un elemento en relación con los otros.
  • flex-shrink: Controla cuánto puede encogerse un elemento en relación con los otros.
  • flex-basis: Establece el tamaño base inicial del elemento.

El uso adecuado de flex-grow, flex-shrink y flex-basis te permitirá crear layouts altamente flexibles y adaptables, optimizando la distribución del espacio en tu diseño web según las necesidades específicas de tu proyecto.


Pregúntame lo que sea