Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.
Resumen
La propiedad CSS justify-content
define cómo el navegador distribuye el espacio entre y alrededor de los items flex, a lo largo del eje x principal de su contenedor.
El alineamiento se produce luego de que las longitudes y márgenes automáticos son aplicados, lo que significa que, si existe al menos un elemento flexible con flex-grow
diferente a 0, no tendrá efecto ya que no habrá espacio disponible.
No se debe asumir que esta propiedad sólo se aplicará a contenedores flex en el futuro y por lo tanto no ocultarla simplemente estableciendo otro valor para display
. El CSSWG está trabajano para extender su uso a cualquier elemento en bloque. La especificación preliminar se encuentra en una etapa muy temprana y aún no está implementada.
Valor inicial | flex-start |
---|---|
Applies to | flex containers |
Heredable | no |
Media | visual |
Valor calculado | como se especifica |
Animatable | no |
Canonical order | el orden único no-ambigüo definido por la gramática formal |
Véase Using CSS flexible boxes para más propiedades e información.
Sintaxis
/* Alinear items flex desde el comienzo */ justify-content: flex-start; /* Alinear items desde el final */ justify-content: flex-end; /* Alinear items en el centro */ justify-content: center; /* Distribuir items uniformemente El primer item al inicio, el último al final */ justify-content: space-between; /* Distribuir items uniformemente Los items tienen el mismo espacio a su alrededor */ justify-content: space-around; /* Valores globales */ justify-content: inherit; justify-content: initial; justify-content: unset;
Valores
flex-start
- Los items flex se colocan comenzando desde el comienzo principal. El margen del primer item es alineado al ras con el borde del comienzo principal de la línea y cada item siguiente es alineado al ras con el precedente.
flex-end
- Los items flex se colocan comenzando desde el final principal. El margen del último item es alineado al ras con el borde del final principal de la línea y cada item precedente es alineado al ras con el siguiente.
center
- Los items flex son colocados hacia el centro de la línea. Los items flex se alinean al ras entre sí y en torno al centro de la línea. El espacio entre el borde del comienzo principal de la línea y el primer item es el mismo que el espacio entre el borde del final principal y el último item de la línea.
space-between
- Los items flex se distribuyen uniformemente sobre la línea. El espaciamiento se hace de tal manera que el espacio adyacente entre dos items es el mismo. El borde del comienzo principal y el borde del final principal se alinean al ras con el borde del primer y último item respectivamente.
space-around
- Los items flex se alinean uniformemente de tal manera que el espacio entre dos items adyacentes es el mismo. El espacio vacío anterior al primer item y posterior al último item equivale a la mitad del espacio entre dos items adyacentes.
Sintaxis formal
flex-start | flex-end | center | space-between | space-around
Ejemplos
Contenido HTML
<div id="container"> <p>justify-content: flex-start</p> <div id="flex-start"> <div></div> <div></div> <div></div> </div> <p>justify-content: flex-end</p> <div id="flex-end"> <div></div> <div></div> <div></div> </div> <p>justify-content: center</p> <div id="center"> <div></div> <div></div> <div></div> </div> <p>justify-content: space-between</p> <div id="space-between"> <div></div> <div></div> <div></div> </div> <p>justify-content: space-around</p> <div id="space-around"> <div></div> <div></div> <div></div> </div> </div>
CSS
#container > div { display: flex; font-family: "Courier New", "Lucida Console", monospace; } #container > div > div { width: 50px; height: 50px; background: linear-gradient(-45deg, #788cff, #b4c8ff); } #flex-start { justify-content: flex-start; } #center { justify-content: center; } #flex-end { justify-content: flex-end; } #space-between { justify-content: space-between; } #space-around { justify-content: space-around; }
Resultados en:
Especificaciones
Especificación | Estado | Comentario |
---|---|---|
CSS Flexible Box Layout Module The definition of 'justify-content' in that specification. |
Last Call Working Draft | Definición inicial |
Compatibilidad en navegadores
Característica | Firefox (Gecko) | Chrome | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Soprte básico | 18.0 (18.0) (behind a pref) [1] 20.0 (20.0) |
21.0-webkit | 11 | 12.10 | Not supported |
Característica | Firefox Mobile (Gecko) | Android | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Soprte básico | ? | ? | Not supported | 12.10 | Not supported |
[1] Firefox soporta sólo single-line flexbox hasta Firefox 28. Para activar soporte flexbox, para Firefox 18 y 19, el usuario debe cambiar la preferencia about:config "layout.css.flexbox.enabled" a true
.