CSS Grid example

by Yunus Gaziev

HTML

<div class="grid">
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
  <div class="elem"></div>
</div>

CSS

.grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-template-rows: 64px 64px 64px 64px;
  grid-gap: 10px;
}

.elem {
  padding: 20px;
  background-color: #ccc;
}

.elem:nth-child(1) {
  grid-row: 1;
  grid-column-start: 1;
  grid-row-end: 1;
  grid-column-end: 3;
}

.elem:nth-child(2) {
  grid-row-start: 1;
  grid-column-start: 3;
  grid-row-end: 3;
  grid-column-end: 3;
}

.elem:nth-child(8) {
  grid-row-start: 3;
  grid-column-start: 2;
  grid-row-end: 3;
  grid-column-end: 4;
}

.elem:nth-child(10) {
  grid-row-start: 4;
  grid-column-start: 1;
  grid-row-end: 4;
  grid-column-end: 3;
}

.elem:nth-child(11) {
  grid-row-start: 4;
  grid-column-start: 3;
  grid-row-end: 4;
  grid-column-end: 5;
}