Grid

The core system of CSS Grid layout. Atomic CSS recommends using Grid.

Grid Template Columns (gtc)

PatternExampleCSS
Direct valuesgtc1fr-2fr-1fr1fr 2fr 1fr
Fixed+ratiogtc200px-auto-1fr200px auto 1fr
repeatgtcr3-1frrepeat(3, 1fr)
auto-fitgtcrfit-minmax200px-1frrepeat(auto-fit, minmax(200px, 1fr))
auto-fillgtcrfill-minmax250px-1frrepeat(auto-fill, minmax(250px, 1fr))

Grid Template Rows (gtr)

ExampleCSS
gtrauto-1fr-autoauto 1fr auto
gtrr3-1frrepeat(3, 1fr)

Special Keywords

KeywordDescription
autoAuto size
minmin-content
maxmax-content
subgridsubgrid
fc100pxfit-content(100px)

minmax

ClassCSS
gtcminmax100px-1frminmax(100px, 1fr)
gtcminmax200px-300px-1frminmax(200px, 300px) 1fr

calc

ClassCSS
gtccalc100p-200px-1frcalc(100% - 200px) 1fr
gtccalc-add50p-100pxcalc(50% + 100px)

Grid Auto Flow

ClassCSS
gafrgrid-auto-flow: row
gafcgrid-auto-flow: column
gafdgrid-auto-flow: dense
gafrdgrid-auto-flow: row dense
gafcdgrid-auto-flow: column dense

Grid Auto Columns / Rows

PrefixPropertyExample
gacgrid-auto-columnsgac1fr
gargrid-auto-rowsgar10rem

Grid Column / Row (Positioning)

PrefixPropertyExample
gcsgrid-column-startgcs1
gcegrid-column-endgce3
grsgrid-row-startgrs1
gregrid-row-endgre3

Place Items / Content / Self

ClassCSS
pisplace-items: start
picplace-items: center
pieplace-items: end
pistplace-items: stretch
pcsplace-content: start
pccplace-content: center
pceplace-content: end
pcstplace-content: stretch
pcsbplace-content: space-between
pcsaplace-content: space-around
pcseplace-content: space-evenly
pssplace-self: start
pscplace-self: center
pseplace-self: end
psstplace-self: stretch
psaplace-self: auto

Common Patterns

<!-- Responsive cards (auto-fit) -->
<div class="dg gtcrfit-minmax28rem-1fr gap2rem">
  <div>Card 1</div>
  <div>Card 2</div>
  <div>Card 3</div>
</div>

<!-- 3 cols to 2 cols to 1 col -->
<div class="dg gtcr3-1fr md-gtcr2-1fr sm-gtc1fr gap2rem">
  ...
</div>

<!-- Sidebar layout -->
<div class="dg gtc25rem-1fr gap2rem">
  <aside>Sidebar</aside>
  <main>Content</main>
</div>

<!-- Fullscreen (header-main-footer) -->
<div class="dg gtrauto-1fr-auto h100vh">
  <header>Header</header>
  <main>Content</main>
  <footer>Footer</footer>
</div>