--- title: Diseño de caja flexible CSS slug: Web/CSS/CSS_Flexible_Box_Layout tags: - CSS - CSS Flexible - flexbox translation_of: Web/CSS/CSS_Flexible_Box_Layout ---
{{CSSRef}}
El diseño CSS Flexbox es un módulo de CSS que define un modelo de caja, optimizado para el diseño de interfaces de usuario. En el diseño flex, los nodos hijo se pueden distribuir en dirección vertical u horizontal y se pueden "flexibilizar" sus tamaños, bien sea rellenando el espacio disponible o encogiéndose para evitar salirse del contorno del nodo padre. Se puede manipular fácilmente tanto la alineación horizontal como la vertical, de los nodos hijo. La anidación de estas cajas (horizontal dentro de vertical o vertical dentro de horizontal) se puede usar para construir diseños en dos dimensiones.
En el siguiente ejemplo, se ha definido un contenedor como display: flex
, lo que significa que los tres elementos hijo se convierten en elementos flexibles. El valor de justify-content
se ha establecido en space-between
para espaciar los elementos de manera uniforme en el eje principal. Se ha colocado una cantidad igual de espacio entre cada elemento, con los elementos izquierdo y derecho alineados con los bordes del contenedor flexible. También puede ver que los elementos se estiran en el eje transversal, debido a que el valor predeterminado de align-items
es stretch
. Los elementos se extienden hasta la altura del contenedor flexible, por lo que cada uno de ellos tiene tanta altura como el elemento más alto.
{{EmbedGHLiveSample("css-examples/flexbox/basics/simple-example.html", '100%', 500)}}
Las propiedades align-content
, align-self
, align-items
y justify-content
aparecieron inicialmente en la especificación de Flexbox, pero ahora están definidas en Alineación de cuadro y la especificación de Flexbox las refiere a la Especificación de alineación de cuadro para definiciones actualizadas. Las propiedades de alineación adicionales también se definen en Alineación de cuadro.
Especificación | Estado | Comentario |
---|---|---|
{{ SpecName('CSS3 Flexbox') }} | {{ Spec2('CSS3 Flexbox') }} | Definición inicial. |