如何创建这种交替布局?

Nic*_*ola -1 html css css-selectors

这是我需要使用的HTML:

<div class="images">
  <div class="image"></div>
  <div class="image"></div>
  <div class="image"></div>
  ...
</div>
Run Code Online (Sandbox Code Playgroud)

我试过:nth-child() even/odd/xn+x等等 - 没有运气,我无法弄清楚要做什么计算.如果需要,可以通过PHP添加动态CSS类.

我正在尝试实现这种布局:

在此输入图像描述

Tem*_*fif 5

你可以尝试这样的事情.您的模式重复每4个元素,因此您需要考虑nth-child(4n + x):

.images {
  display:flex;
  min-height:100vh;
  flex-wrap:wrap;
  align-content:flex-start;
}
.image {
  height:50px;
  border:1px solid;
  box-sizing:border-box;
}

.image:nth-child(4n+1),
.image:nth-child(4n+4) {
   width:40%;
   background:red;
}

.image:nth-child(4n+2),
.image:nth-child(4n+3) {
   width:60%;
   background:blue;
}
Run Code Online (Sandbox Code Playgroud)
<div class="images">
  <div class="image"></div>
  <div class="image"></div>
  <div class="image"></div>
  <div class="image"></div>
  <div class="image"></div>
  <div class="image"></div>
  <div class="image"></div>
  <div class="image"></div>
</div>
Run Code Online (Sandbox Code Playgroud)