Minha solução para o exercício ficou como abaixo, e surgiu uma dúvida: nos casos onde o componente ocupa apenas 1 linha ou 1 coluna, é necessário colocar o "grid-row: span 1" ou "grid-column: span 1"? Pois não coloquei e deu certo igual, mas qual a boa prática neste caso: colocar ou não colocar (quando o valor for apenas 1)?
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
.corpo {
background-color: #444444;
padding: 8px;
width: 100vw;
height: 100vh;
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr 1fr 1fr;
}
.cabecalho {
background-color: #cc2a2a;
border-radius: 10px;
min-width: 50px;
min-height: 50px;
margin: 8px;
grid-column: span 4;
}
.lateral {
background-color: #45cc2a;
border-radius: 10px;
min-width: 50px;
min-height: 50px;
margin: 8px;
grid-row: span 3;
}
.meio {
background-color: #2aa6cc;
border-radius: 10px;
min-width: 50px;
min-height: 50px;
margin: 8px;
grid-column: span 2;
grid-row: span 3;
}
.direita-cima {
background-color: #352acc;
border-radius: 10px;
min-width: 50px;
min-height: 50px;
margin: 8px;
}
.direita-baixo {
background-color: #cc2a96;
border-radius: 10px;
min-width: 50px;
min-height: 50px;
margin: 8px;
grid-row: span 2;
}