CSS 网格中的中心行

Fre*_*ddy 5 html css css-grid

我正在创建一个 4x3 网格布局,并希望第二行居中,因为顶行有四个元素。

像这样的东西:

在此输入图像描述

演示代码:

.grid-container {
  display: grid;
  grid-template-columns: 25% 25% 25% 25%;
  grid-template-rows: 50% 50%;
  padding: 10px;
}
.grid-item {
  background-color: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(0, 0, 0, 0.8);
  padding: 20px;
  font-size: 30px;
  text-align: center;
}
Run Code Online (Sandbox Code Playgroud)
<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>  
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>  
  <div class="grid-item">7</div>
</div>
Run Code Online (Sandbox Code Playgroud)

לבנ*_*לכה 5

很容易做到flex

并居中使用justify-content: center;设置宽度使用flex: 0 0 cala(20% - 40px);

.grid-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.grid-item {
  background-color: rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(0, 0, 0, 0.8);
  font-size: 30px;
  text-align: center;
  flex: 0 0 calc(20% - 40px);
padding: 20px;
margin: 5px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="grid-container">
  <div class="grid-item">1</div>
  <div class="grid-item">2</div>
  <div class="grid-item">3</div>  
  <div class="grid-item">4</div>
  <div class="grid-item">5</div>
  <div class="grid-item">6</div>  
  <div class="grid-item">7</div>
</div>
Run Code Online (Sandbox Code Playgroud)