JSFiddle - React, Tailwind, and code Playground

by Bartek Legięć

HTML

<div class="wrapper">
  <header></header>
  <main>
    <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p>
  </main>
  <nav>
    <ul>
      <li>Menu #1</li>
      <li>Menu #2</li>
      <li>Menu #3</li>
    </ul>
  </nav>
  <footer>&copy John Doe</footer>
</div>

CSS

.wrapper {
  display: grid;
  grid-template-columns: 1fr 50vw 20vw 1fr;
  grid-template-rows: auto 1fr auto;
  grid-template-areas: "header header header header" "start main nav end" "footer footer footer footer";
  min-height: 100vh;
}

header {
  grid-area: header;
}
  
main {
  grid-area: main;
}
  
footer {
  grid-area: footer;
}
  
nav {
  grid-area: nav;
}

body {
  margin: 0;
  font-family: "Noto Serif";
  font-size: calc(16px + .25vw);
}

header {
  background: #673AB7;
  width: 100%;
  height: 64px;
}
  
footer {
  background: #673AB7;
  text-align: center;
  padding: 1em;
  box-sizing: border-box;
  color: #fff;
}