Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Treinando o grid (Dúvida)

Bom dia amigos, estou com uma breve dúvida somente nessa parte do código grid-template-columns: 4fr 4fr 4fr 4fr; que cria o grid template, fui pesquisar a sintaxe no MDN e na W3 e não entendi muito bem cada atributo, e também essa medida "fr" que fiquei na dúvida. Se alguém puder me esclarecer essas duas dúvidas ficarei grato!!

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas
solução!

Boa noite Frank, tudo bem?

Essa parte do código que você mencionou, você esta especificando que o grid-template-columns terá 4 colunas, e que cada uma delas terá 4 fr.

fr é mais uma unidade de medida, que significa fração. Quando você especifica fr, o grid vai se "virar" para encaixar essas 4 colunas na largura inteira do elemento, com a fração que você especificou, por exemplo:

4fr 4fr 4fr 4fr

esses valores também poderiam ser diferentes:

4fr 1fr 4fr 1fr

ai o grid ia especificar tamanhos maiores pra coluna 1 e 3, e tamanhos menores pra coluna 2 e 4.

Espero ter ajudado, ótimos estudos!

Eu fiz o código dessa forma e o resultado foi idêntico ao sugerido pela atividade.

* {
    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;
}