grid-auto-flow
Quick Summary for grid-auto-flow
The grid-auto-flow CSS property controls how the auto-placement algorithm works, specifying exactly how auto-placed items get flowed into the grid.
Code Usage for grid-auto-flow
/* Keyword values */ grid-auto-flow: row; grid-auto-flow: column; grid-auto-flow: dense; grid-auto-flow: row dense; grid-auto-flow: column dense;  /* Global values */ grid-auto-flow: inherit; grid-auto-flow: initial; grid-auto-flow: revert; grid-auto-flow: unset; 
More Details for grid-auto-flow

grid-auto-flow

The grid-auto-flow CSS property controls how the auto-placement algorithm works, specifying exactly how auto-placed items get flowed into the grid.

Syntax

/* Keyword values */ grid-auto-flow: row; grid-auto-flow: column; grid-auto-flow: dense; grid-auto-flow: row dense; grid-auto-flow: column dense;  /* Global values */ grid-auto-flow: inherit; grid-auto-flow: initial; grid-auto-flow: revert; grid-auto-flow: unset; 

This property may take one of two forms:

a single keyword: one of row, column, or dense. two keywords: row dense or column dense.

Values

row

Items are placed by filling each row in turn, adding new rows as necessary. If neither row nor column is provided, row is assumed.

column

Items are placed by filling each column in turn, adding new columns as necessary.

dense

"dense" packing algorithm attempts to fill in holes earlier in the grid, if smaller items come up later. This may cause items to appear out-of-order, when doing so would fill in holes left by larger items.

If it is omitted, a "sparse" algorithm is used, where the placement algorithm only ever moves "forward" in the grid when placing items, never backtracking to fill holes. This ensures that all of the auto-placed items appear "in order", even if this leaves holes that could have been filled by later items.

Formal definition

Initial valuerow
Applies togrid containers
Inheritedno
Computed valueas specified
Animation typediscrete

Formal syntax

[ row | column ] || dense

Examples

Setting grid auto-placement

HTML
<div id="grid">   <div id="item1"></div>   <div id="item2"></div>   <div id="item3"></div>   <div id="item4"></div>   <div id="item5"></div> </div> <select id="direction">   <option value="column">column</option>   <option value="row">row</option> </select> <input id="dense" type="checkbox"> <label for="dense">dense</label> 
CSS
#grid {   height: 200px;   width: 200px;   display: grid;   gap: 10px;   grid-template: repeat(4, 1fr) / repeat(2, 1fr);   grid-auto-flow: column;  /* or 'row', 'row dense', 'column dense' */ }  #item1 {   background-color: lime;   grid-row-start: 3; }  #item2 {   background-color: yellow; }  #item3 {   background-color: blue; }  #item4 {   grid-column-start: 2;   background-color: red; }  #item5 {   background-color: aqua; } 
Result

Specifications

Specification
CSS Grid Layout Module Level 3 # grid-auto-flow-property

See also

Related CSS properties: grid-auto-rows, grid-auto-columns, grid Grid Layout Guide: Auto-placement in grid layout Video tutorial: Introducing Grid auto-placement and order Select your preferred language English (US)Français日本語Português (do Brasil)Русский中文 (简体) Change language

No Items Found.

Add Comment
Type in a Nick Name here
 
Other Categories in CSS
css
Search CSS
Search CSS by entering your search text above.
Welcome

This is my test area for webdev. I keep a collection of code here, mostly for my reference. Also if i find a good link, i usually add it here and then forget about it. more...

Subscribe to weekly updates about things i have added to the site or thought interesting during the last week.

You could also follow me on twitter or not... does anyone even use twitter anymore?

If you found something useful or like my work, you can buy me a coffee here. Mmm Coffee. ☕

❤️👩‍💻🎮

🪦 2000 - 16 Oct 2022 - Boots
Random Quote
Old programmers never die; they just lose some of their functions.
Random CSS Property

@viewport

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
min-zoom (@viewport) css reference