Свойство grid-auto-flow
Свойството grid-auto-flow задава
автоматично разполагане на елементи в грид.
Може да има стойности row - запълва
редовете с елементи, column - колони,
dense - разполага елементи на всички празни места
в мрежата; row dense - подрежда елементи, запълвайки
всеки ред и всички свободни места в мрежата; column dense -
запълва елементите всяка колона и цялото свободно място в грид.
Синтаксис
селектор {
grid-auto-flow: запълваема част от грид;
}
Пример
Нека запълним в таблицата всички редове:
<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;
}
:
Пример
А сега нека запълним с елементи всички колони в таблицата:
<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;
}
:
Пример
Нека разположим всички елементи в таблицата, така че да не остане свободно място:
<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;
}
:
Пример
А сега нека запълним с елементи цялото свободно място в редовете:
<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;
}
:
Пример
Нека променим предишния пример, така че елементите да запълнят цялото свободно място в колоните:
<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;
}
:
Вижте също
-
свойство
grid,
което задава съкратен запис на свойствата на колони и редове -
свойство
grid-auto-rows,
което задава брой и ширина на редове в неявен грид -
свойство
grid-template-columns,
което задава брой и ширина на колони в грид -
свойство
grid-template-rows,
което задава брой и ширина на редове в грид