ものすごく無理やり実装するなら、以下のような実装も可能と思います。
Codepenでやってみました:
https://codepen.io/new1ro/pen/gOPKvYL
CSS
1div{
2 display: inline-block;
3 border: 5px solid #09c;
4 width: 20vw; /* 任意の幅 */
5 height: 50vh; /* 任意の高さ */
6 font-size: 0;
7 box-sizing: border-box;
8}
9div:nth-child(3),
10div:nth-child(4) {
11 margin-bottom: calc(-50vh - 6px); /* -任意の高さ - 余白 */
12 height: calc((50vh * 2) + 6px); /* (任意の高さ * 2) + 余白 */
13}
上記について、7つ目のdivを追加した途端破綻したりするはずです。
また本当に採用するなら、display: inline-block;を使ったときに生じてしまう余白をどのようにコントロールするか、という課題は解決する必要はあると思います。
6つの<div>の親要素が必要になりますが、以下のような記述だと実現可能です。
HTML
1<div class="parent">
2 <div></div>
3 <div></div>
4 <div></div>
5 <div></div>
6 <div></div>
7 <div></div>
8</div>
CSS
1.parent {
2 display: grid;
3 grid-template-rows: 200px 200px; /* 縦方向 */
4 grid-template-columns: 1fr 1fr 1fr 1fr; /* 横方向 */
5 grid-gap: 10px; /* 余白 */
6
7}
8.parent div {
9 border: 5px solid #09c;
10}
11.parent div:nth-child(1) {
12
13}
14.parent div:nth-child(2) {
15
16}
17.parent div:nth-child(3) {
18 grid-row: 1 / 3;
19 grid-column: 3 / 4;
20}
21.parent div:nth-child(4) {
22 grid-row: 1 / 3;
23 grid-column: 4 / 5;
24}
25.parent div:nth-child(5) {
26
27}
28.parent div:nth-child(6) {
29
30}
参考URL:
https://developer.mozilla.org/ja/docs/Web/CSS/grid
https://qiita.com/kura07/items/e633b35e33e43240d363