Propiedad grid-auto-flow
La propiedad grid-auto-flow establece
la colocación automática de elementos en grid.
Puede tener los valores row - llena
las filas con elementos, column - columnas,
dense - coloca elementos en todos los espacios vacíos
en la grid; row dense - dispone elementos, llenando
cada fila y todos los espacios libres de la grid; column dense -
llena con elementos cada columna y todo el espacio libre en grid.
Sintaxis
selector {
grid-auto-flow: parte rellenable de grid;
}
Ejemplo
Llenemos todas las filas en la tabla:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
#parent {
display: grid;
grid-auto-flow: row;
grid-template-rows: 1fr 1fr;
grid-template-columns: 1fr 1fr 2fr;
border: 2px solid #696989;
padding: 10px;
width: 400px;
height: 200px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Ejemplo
Y ahora llenemos todas las columnas en la tabla con elementos:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
#parent {
display: grid;
grid-auto-flow: column;
grid-template-rows: 1fr 1fr;
grid-template-columns: 1fr 1fr 2fr;
border: 2px solid #696989;
padding: 10px;
width: 400px;
height: 200px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Ejemplo
Coloquemos todos los elementos en la tabla, para que no quede espacio libre:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
#parent {
display: grid;
grid-auto-flow: dense;
grid-template-rows: 1fr 1fr;
grid-template-columns: 1fr 1fr 2fr;
border: 2px solid #696989;
padding: 10px;
width: 400px;
height: 200px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Ejemplo
Y ahora llenemos con elementos todo el espacio libre en las filas:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
#parent {
display: grid;
grid-auto-flow: row dense;
grid-template-rows: 1fr 1fr;
grid-template-columns: 1fr 1fr 2fr;
border: 2px solid #696989;
padding: 10px;
width: 400px;
height: 200px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Ejemplo
Modifiquemos el ejemplo anterior, para que los elementos llenen todo el espacio libre en las columnas:
<div id="parent">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
</div>
#parent {
display: grid;
grid-auto-flow: column dense;
grid-template-rows: 1fr 1fr;
grid-template-columns: 1fr 1fr 2fr;
border: 2px solid #696989;
padding: 10px;
width: 400px;
height: 200px;
}
#parent > div {
padding: 10px;
border: 1px solid #696989;
}
:
Véase también
-
la propiedad
grid,
que establece la notación abreviada de las propiedades de columnas y filas -
la propiedad
grid-auto-rows,
que establece la cantidad y el ancho de las filas en grid implícito -
la propiedad
grid-template-columns,
que establece la cantidad y el ancho de las columnas en grid -
la propiedad
grid-template-rows,
que establece la cantidad y el ancho de las filas en grid