flex align-content

by Henery Yang

HTML

<div style="display:flex; flex-direction: row;">
  <div>
    flex-start
    <div class="flex-container align-content-flex-start">
      <div class="flex-item">
        <p>1</p>
      </div>
      <div class="flex-item">
        <p>2</p>
      </div>
      <div class="flex-item">
        <p>3</p>
      </div>
      <div class="flex-item">
        <p>4</p>
      </div>
      <div class="flex-item">
        <p>5</p>
      </div>
      <div class="flex-item">
        <p>6</p>
      </div>
      <div class="flex-item">
        <p>7</p>
      </div>
      <div class="flex-item">
        <p>8</p>
      </div>
    </div>
    flex-end
    <div class="flex-container align-content-flex-end">
      <div class="flex-item">
        <p>1</p>
      </div>
      <div class="flex-item">
        <p>2</p>
      </div>
      <div class="flex-item">
        <p>3</p>
      </div>
      <div class="flex-item">
        <p>4</p>
      </div>
      <div class="flex-item">
        <p>5</p>
      </div>
      <div class="flex-item">
        <p>6</p>
      </div>
      <div class="flex-item">
        <p>7</p>
      </div>
      <div class="flex-item">
        <p>8</p>
      </div>
    </div>
  </div>
  <div>
    center
    <div class="flex-container align-content-center">
      <div class="flex-item">
        <p>1</p>
      </div>
      <div class="flex-item">
        <p>2</p>
      </div>
      <div class="flex-item">
        <p>3</p>
      </div>
      <div class="flex-item">
        <p>4</p>
      </div>
      <div class="flex-item">
        <p>5</p>
      </div>
      <div class="flex-item">
        <p>6</p>
      </div>
      <div class="flex-item">
        <p>7</p>
      </div>
      <div class="flex-item">
        <p>8</p>
      </div>
    </div>
    space-between
    <div class="flex-container align-content-space-between">
      <div class="flex-item">
        <p>1</p>
      </div>
      <div class="flex-item">
        <p>2</p>
      </div>
      <div class="flex-item">
       ...

CSS

.flex-container {
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  width: 180px;
  height: 160px;
  background-color: #FFD54F;
  margin-bottom: 10px;
  margin-right: 10px;
  text-align: center;
}

.flex-item {
  background-color: #ffffff;
  width: 50px;
  margin: 5px;
  box-shadow: 0 2px 5px 0 rgba(0, 0, 0, .26);
}

.flex-item p:first-child {
  display: block;
  width: 22px;
  height: 22px;
  margin: 5px auto;
  border-radius: 50%;
  background-color: #FFB300;
  color: #ffffff;
}

.align-content-flex-start {
  align-content: flex-start;
}

.align-content-flex-end {
  align-content: flex-end;
}

.align-content-center {
  align-content: center;
}

.align-content-space-between {
  align-content: space-between;
}

.align-content-space-around {
  align-content: space-around;
}

.align-content-stretch {
  align-content: stretch;
}