JSFiddle - React, Tailwind, and code Playground

by chuangchen

HTML

<!doctype html>
<html lang="en">

  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
  </head>

  <body>

    <div class="container">
      <header>
        <h1 class="page-heading">Ink</h1>
      </header>

      <nav>
        <ul class="site-nav">
          <li><a href="/">Home</a></li>
          <li><a href="/features">Features</a></li>
          <li><a href="/pricing">Pricing</a></li>
          <li><a href="/support">Support</a></li>
          <li class="nav-right">
            <a href="/about">About</a>
          </li>
        </ul>
      </nav>

      <main class="main tile">
        <h1>Team collaboration done right</h1>
        <p>Thousands of teams from all over the world turn to <b>Ink</b> to communicate and get things done.</p>
      </main>

      <!--login-->
      <div class="sidebar-top tile">
        <form class="login-form">
          <h3>Login</h3>
          <p>
            <label for="username">Username</label>
            <input id="username" type="text" name="username" />
          </p>
          <p>
            <label for="password">Password</label>
            <input id="password" type="password" name="password" />
          </p>
          <button type="submit">Login</button>
        </form>
      </div>

      <!--price / sign up -->
      <div class="sidebar-bottom tile centered">
        <small>Starting at</small>
        <div class="cost">
          <span class="cost-currency">$</span>
          <span class="cost-dollars">20</span>
          <span class="cost-cents">.00</span>
        </div>
        <a class="cta-button" href="/pricing">
          Sign up <a>
          </a>
        </a>
      </div>
    </div>
  </body>
</html>

CSS

: root {
  box-sizing: border-box;
}

*.:: before,
::after {
  box-sizing: inherit;
}

body {
  background-color: #709b90;
  font-family: Helvetica, Arial, sans-serif;
}

.container {
  display: grid;
  grid-template-columns: 2fr 1fr;
  /* 定义4个水平轨道, 等同于 grid-template-rows:auto auto auto auto; */
  grid-template-rows: repeat (4, auto);
  grid-gap: 1.5em;
  max-width: 1080px;
  margin: 0 auto;
}


header,
nav {
  /*从1号垂直网格线跨越到3号垂直网格线*/
  grid-column: 1 / 3;
  /*
  该网格项将跨越一个网格行。span 表示所要跨越的网格数量。
  */
  grid-row: span 1;
}

.main {
  grid-column: 1 / 2;
  /* 元素起始于第3条水平网格线,结束于第5条水平网格线*/
  grid-row: 3 / 5;
}

.sidebar-top {
  grid-column: 2 / 3;
  grid-row: 3 / 4;
}

.sidebar-bottom {
  grid-column: 2 / 3;
  grid-row: 4 / 5;
}

.tile {
  padding: 1.5em;
  background-color: #Eff;
}

.tile > :first-child {
  margin-top: 0;
}

.tile *+* {
  margin-top: 1.5em;
}

header {
  background: yellow;
}

nav {
  background: orange;
} 

.sidebar-top {
  background: green;
}

.sidebar-bottom {
  background: purple;
}