Flexbox en CSS
Conceptos Básicos de Flexbox
Para comprender cómo funciona Flexbox, es fundamental familiarizarse con algunos conceptos y terminología clave. Flexbox introduce varios términos y propiedades específicas que te permitirán controlar la disposición de los elementos de manera más precisa.
Terminología Clave
-
Contenedor Flex (Flex Container): El componente padre que tiene
display: flex;
odisplay: inline-flex;
. Este contenedor establece el contexto Flex para sus hijos. -
Elementos Flex (Flex Items): Los hijos directos del contenedor Flex. Estos elementos son los que se disponen usando las propiedades de Flexbox.
-
Eje Principal (Main Axis): El eje principal en el cual los elementos Flex se colocan. Por defecto, este eje es horizontal (de izquierda a derecha).
-
Eje Cruzado (Cross Axis): El eje perpendicular al eje principal. Por defecto, este eje es vertical (de arriba hacia abajo).
-
Inicio del Contenido (Main Start) y Fin del Contenido (Main End): Las posiciones inicial y final del eje principal.
-
Inicio Cruzado (Cross Start) y Fin Cruzado (Cross End): Las posiciones inicial y final del eje cruzado.
Propiedades Fundamentales
Propiedades del Contenedor Flex
-
display: Define un contenedor flex. Puede ser
flex
oinline-flex
.css -
flex-direction: Establece la dirección del eje principal (por defecto,
row
).css -
flex-wrap: Decide si los elementos flex deben envolver cuando no caben en una sola línea.
css -
flex-flow: Es una abreviatura para las propiedades
flex-direction
yflex-wrap
.css -
justify-content: Alinea los elementos a lo largo del eje principal.
css -
align-items: Alinea los elementos a lo largo del eje cruzado.
css -
align-content: Alínea las líneas del eje cruzado cuando hay espacio extra.
css
Propiedades de los Elementos Flex
-
order: Modifica el orden de los elementos dentro del contenedor.
css -
flex-grow: Define la capacidad de un elemento para crecer si es necesario.
css -
flex-shrink: Define la capacidad de un elemento para encogerse si es necesario.
css -
flex-basis: La base flexible de un elemento antes de que se distribuyan los espacios restantes.
css -
flex: Abreviatura para
flex-grow
,flex-shrink
yflex-basis
.css -
align-self: Permite modificar la alineación de un único elemento a lo largo del eje cruzado, sobrescribiendo
align-items
.css
Imágenes Explicativas
- [Placeholder: Imagen que muestra un contenedor con
display: flex;
y varios elementos flex dispuestos en una fila horizontal.] - [Placeholder: Diagrama que ilustra los conceptos de eje principal y eje cruzado, junto con inicio y fin del contenido (main start, main end) y cruzado (cross start, cross end).]
Estos conceptos son fundamentales para aprovechar al máximo las capacidades de Flexbox. En los siguientes capítulos, profundizaremos en cada una de estas propiedades y su uso en diversos escenarios.
- Introducción a Flexbox en CSS
- Conceptos Básicos de Flexbox
- Contenedor Flex y Elementos Flex
- Dirección del Eje Principal y Eje Cruzado
- Propiedad flex-direction
- Propiedad flex-wrap
- Propiedad justify-content
- Propiedad align-items
- Propiedad align-content
- Propiedad flex-grow, flex-shrink y flex-basis
- Propiedad flex y Atajos
- Ordenación de Elementos con order
- Alineación Individual con align-self
- Flexbox y Diseño Responsive
- Conclusiones y Buenas Prácticas con Flexbox