<div class="canvas">
<div class="rect1 left top"></div>
<div class="rect2 top right"></div>
<div class="rect3 left"></div>
<div class="rect4 left bottom"></div>
<div class="rect5 bottom"></div>
<div class="rect6 right"></div>
<div class="rect7 right bottom"></div>
</div>
.canvas {
width: 100%;
max-width: 600px;
aspect-ratio: 1;
padding-inline: 0.5rem;
display: grid;
grid-template-columns: 25% 65% 10%;
grid-template-rows: 15% 60% 12.5% 12.5%;
background: white;
}
.canvas div {
border: 5px solid black;
box-shadow: rgba(0, 0, 0, 0.5) 0 1px 5px 2px;
}
div.left {
border-left: none;
}
div.top {
border-top: none;
}
div.right {
border-right: none;
}
div.bottom {
border-bottom: none;
}
.rect2 {
grid-column: 2/ -1;
grid-row: 1 / span 2;
background: red;
}
div.rect3 {
border-top: 10px solid black;
}
.rect4 {
background: blue;
grid-row: 3 / span 2;
}
.rect5 {
grid-row: 3 / span 2;
}
div.rect7 {
background: yellow;
border-top: 10px solid black;
}
/* general */
* {
box-sizing: border-box;
}
body {
margin: 0;
height: 100dvh;
display: grid;
place-items: center;
}
A recreation of the famous painting Composition II in Red, Blue, and Yellow using CSS Grid.