3
respostas

Grid layout nos tópicos visitados (Help!!)

Boa tarde, opitei por utilizar o grid nessa seção e ocorreu essas quebras de linha nas listas, o tamanho e o peso da fonte estão igual do figma, alguem tem uma solução para isso? Insira aqui a descrição dessa imagem para ajudar na acessibilidadeHTML:

<article class="topicos-recentes">
            <h3 class="topicos-recentes__titulo">Tópicos visitados recentemente</h3>
            <ul class="topicos-recentes__lista">
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">Android</a>
                </li>
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">Marketing Digital</a>
                </li>
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">Agile</a>
                </li>
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">Agile</a>
                </li>
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">Startups</a>
                </li>
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">HTML & CSS</a>
                </li>
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">Python</a>
                </li>
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">OO</a>
                </li>
                <li class="topicos-recentes__item">
                    <a href="#" class="topicos-recentes__link">Java</a>
                </li>
            </ul>
        </article>

CSS:

.topicos-recentes {
    display: grid;
    column-gap: 1em;
    grid-template-columns: repeat(3, 1fr);
    background: var(--azul-degrade);
    padding: 2.2em 1em;
    text-align: center;
}

.topicos-recentes__titulo {
    display: grid;
    grid-column: 1 / span 3;
    font-weight: 300;
    text-transform: uppercase;
    color: var(--branco);

}

.topicos-recentes__lista {
    display: grid;
    grid-template-columns: repeat(3, auto);
    grid-column: span 3;
    gap: 1em;
    align-items: center;
}

.topicos-recentes__item {
    background-color: var(--laranja);
    padding: 1em;
}

.topicos-recentes__link {
    color: var(--branco);
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
}
3 respostas

Olha, neste caso eu não recomendaria usar grid, pois com essa propriedade grid-template-columns: repeat(3, 1fr); você está informando ao navegador que as 3 colunas devem ter o mesmo tamanho, então o navegador tenta encaixar o texto dentro do tamanho da coluna e ocorre a quebra de página devido ao pouco espaço. Fora que, quando a gente for para telas maiores, os itens vão ocupar um espaço muito grande. Aí fica melhor usar o flex, pois ele vai deixar a largura flexível para caber todo o texto dentro do tópico.

Muito obrigado Matheus, bom saber dessa dica..acabei usando o flex mesmo kk o grid era mais por fins de estudo de posibilidades mas vi também que da bem mais trabalho. obrigado!!

Ei Frank. Se quiser trabalhar com o Grid para estudos, recomendo avançar para a próxima aula e estilizar com o Grid o footer para Tablet (o "Layout 1024"). O footer lá é mais "quadradinho" e acho que o Grid vai dar mais certo nele.

Bons estudos!