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

Me ajude com o GRID

Boa noite pessoal, tudo bem? Estou continuando o projeto e tentando finalizar o site do HZC.

Porém, estou 'sofrendo' para conseguir alinhar no grid uma das partes, da uma olhada na imagem abaixo.

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

No caso, eu gostaria de colocar esses elementos colado a base do mapa. Códigos nos comentários.

Desculpe pelo css gigante, futuramente vou arrumar em arquivos separados.

4 respostas

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>HZC Skate</title>

    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap">
    <link rel="stylesheet" href="assets/css/reset.css">
    <link rel="stylesheet" href="assets/css/style.css">
</head>
<body>
    <header class="cabecalho">
        <button class="cabecalho__menu" aria-label="Menu"><i></i></button>
        <img src="assets/img/logo.svg" alt="Logotipo da HZC" class="cabecalho__logo">
        <p class="cabecalho__perfil">Bruno Lopez</p>
        <button class="cabecalho__notificacao" aria-label="Notificação"><i></i></button>
    </header>
    <nav class="menu-lateral">
        <img src="assets/img/logo.svg" alt="Logotipo da HZC" class="menu-lateral__logo">
        <a href="index.html" class="menu-lateral__link menu-lateral__link--inicio">Início</a>
        <a href="#" class="menu-lateral__link menu-lateral__link--videos">Vídeos</a>
        <a href="picos.html" class="menu-lateral__link menu-lateral__link--picos menu-lateral__link--ativo">Picos</a>
        <a href="#" class="menu-lateral__link menu-lateral__link--integrantes">Integrantes</a>
        <a href="#" class="menu-lateral__link menu-lateral__link--camisas">Camisas</a>
        <a href="#" class="menu-lateral__link menu-lateral__link--pinturas">Pinturas</a>
    </nav>
    <main class="picos--similares-page">
        <article class="cartao--picos cartao--destaque destaque-video">
            <img src="assets/img/mapa-picos.png" alt="Banner do cartão" class="cartao__imagem cartao__imagem--mobile">
            <img src="assets/img/mapa-picos.png" alt="Banner do cartão" class="cartao__imagem cartao__imagem--desktop">
        </article>


        <section class="cartao--picos-similares cartao--picos-similares picos-similares">
            <article class="cartao--similares">
                <img src="assets/img/artigo_1.png" alt="Locais visitados">
                <div class="cartao__picos-similiares-conteudo">
                    <p class="cartao__picos-similares">Bruno Lopes</p>
                    <h3 class="cartao__titulo-picos-similares">Gap com mureta da Voluntários</h3>
                    <p class="cartao__picos-similares-visualizacao cartao__info--visualizacao">53 visualizações</p>
                    <a href="detalhes-picos.html" class="button cartao__botao cartao__botao--picos" aria-label="Picos semiliares"></a>
                </div>
            </article>
            <article class="cartao--similares">
                <img src="assets/img/artigo_1.png" alt="Locais visitados">
                <div class="cartao__picos-similiares-conteudo">
                    <p class="cartao__picos-similares">Bruno Lopes</p>
                    <h3 class="cartao__titulo-picos-similares">Gap com mureta da Voluntários</h3>
                    <p class="cartao__picos-similares-visualizacao cartao__info--visualizacao">53 visualizações</p>
                    <a href="detalhes-picos.html" class="button cartao__botao cartao__botao--picos" aria-label="Picos semiliares"></a>
                </div>
            </article>
            <article class="cartao--similares">
                <img src="assets/img/artigo_1.png" alt="Locais visitados">
                <div class="cartao__picos-similiares-conteudo">
                    <p class="cartao__picos-similares">Bruno Lopes</p>
                    <h3 class="cartao__titulo-picos-similares">Gap com mureta da Voluntários</h3>
                    <p class="cartao__picos-similares-visualizacao cartao__info--visualizacao">53 visualizações</p>
                    <a href="detalhes-picos.html" class="button cartao__botao cartao__botao--picos" aria-label="Picos semiliares"></a>
                </div>
            </article>
        </section>




        <section class="secao picos__similares-descricao">
            <h3 class="titulo-secao">Locais mais visitados</h3>
            <article class="cartao">
                <div class="cartao__conteudo">
                    <p class="cartao__perfil">Bruno Lopes</p>
                    <h3 class="cartao__titulo">GAP do Itaú da Voluntários da Pátria</h3>
                    <p class="cartao__info cartao__info--visualizacao">29 visualizações</p>
                    <a href="detalhes-picos.html" class="button cartao__botao cartao__botao--picos" aria-label="Picos semiliares"></a>
                </div>
            </article>
        </section>
    </main>
    <script src="index.js"></script>
</body>
</html>
body {
    background-color: #1D232A;
    font-family: 'Open Sans','icones', sans-serif;
    color: #FFFFFF;
}

@media screen and (min-width: 1440px) {
    body {
        display: grid;
        grid-template-columns: auto 1fr;
    }    
}

.cabecalho {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #15191C;
    padding: 8px 16px;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.16);
}

@font-face {
    font-family: 'icones';
    src: url(../font/icones.ttf);
}

.cabecalho__menu i::before {
    content: "\e904";
    font-size: 24px;
}

.cabecalho__notificacao i::before {
    content: "\e906";
    font-size: 24px;
}

.cabecalho__logo {
    width: 40px;
}

.cabecalho__perfil {
    display: none;
}

@media screen and (min-width: 1440px) {
    .cabecalho {
        background-color: #1D232A;
        display: grid;
        column-gap: 32px;
        grid-template-columns: 1fr auto;
        padding: 16px 60px;
        height: 80px;
        box-sizing: border-box;
        grid-column: 2;
    }

    .cabecalho__menu {
        display: none;
    }

    .cabecalho__logo {
        display: none;
    }

    .cabecalho__perfil {
        display: grid;
        grid-template-columns: repeat(3, auto);
        column-gap: 8px;
        align-items: center;
        justify-self: flex-end;
        color: #95999C;
        padding: 8px 32px;
        border-right: 1px solid #95999C;
    }

    .cabecalho__perfil::before {
        content: "";
        display: block;
        width: 32px;
        height: 32px;
        background-image: url(../img/profile_2.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .cabecalho__perfil::after {
        content: "\e90d";
        color: #FFFFFF;
        font-size: 1.5em;
    }
}

.menu-lateral {
    display: flex;
    flex-direction: column;
    background-color: #15191C;
    width: 75vw;
    height: 100vh;

    position: absolute;
    left: -100vw;
    transition: .35s;
}

.menu-lateral--ativo {
    left: 0;
    transition: .35s;
}

.menu-lateral__logo {
    width: 118px;
    align-self: center;
    padding: 16px;
}

.menu-lateral__link {
    height: 64px;
    color: #95999C;
    padding-left: 64px;
    display: flex;
    align-items: center;
}

.menu-lateral__link--ativo {
    color: #FFFFFF;
    padding-left: 56px;
    border-left: 8px solid #FFFFFF;
}

.menu-lateral__link::before {
    content: "\e900";
    width: 24px;
    height: 24px;
    font-size: 24px;
    position: absolute;
    left: 24px;
}

.menu-lateral__link--inicio::before {
    content: "\e902";
}

.menu-lateral__link--videos::before {
    content: "\e90e";
}

.menu-lateral__link--picos::before {
    content: "\e909";
}

.menu-lateral__link--integrantes::before {
    content: "\e903";
}

.menu-lateral__link--camisas::before {
    content: "\e900";
}

.menu-lateral__link--pinturas::before {
    content: "\e90a";
}

@media screen and (min-width: 1440px) {
    .menu-lateral {
        position: static;
        width: 200px;
        grid-column: 1;
        grid-row: 1 / span 2;
    }
}

.principal {
    padding: 24px 16px;
    display: grid;
    gap: 16px;
}

.titulo-pagina {
    font-size: 1.5rem;
    font-weight: 700;
}

.titulo-secao {
    font-size: 1.2rem;
    font-weight: 700;
}

@media screen and (min-width: 1440px) {
    .principal {
        display: grid;
        grid-template-columns: auto 1fr auto;
        grid-template-areas:
            "titulo-pagina titulo-pagina titulo-pagina"
            "destaque-video destaque-video videos-recentes"
            "secao-videos secao-videos secao-videos"
            "produtos-recentes destaque-produtos destaque-produtos"
            "secao-produtos secao-produtos secao-produtos"
        ;
        column-gap: 32px;
        padding: 16px 60px;
        grid-column: 2;
    }

    .picos--similares-page {
        display: grid;
        grid-template-columns: auto 1fr auto;
        grid-template-areas:
            "titulo-pagina titulo-pagina titulo-pagina"
            "destaque-video destaque-video picos-similares"
            "picos__similares-descricao picos__similares-descricao picos__similares-descricao"
        ;
        column-gap: 32px;
        padding: 16px 60px;
        grid-column: 2;
    }

    .titulo-secao {
        grid-column: span 4;
    }
}

.cartao {
    width: 100%;
    border-radius: 15px;
    overflow: hidden;
    background-color: #2C343A;
}

.cartao--picos {
    width: 100%;
    border-radius: 15px;
    overflow: hidden;
}

CONTINUA

.cartao--similares {
    width: 100%;
    border-radius: 15px;
    overflow: hidden;
    background-color: #2C343A;
}

.cartao--picos-similares {
    width: 100%;
    border-radius: 15px;
    overflow: hidden;
}

.cartao__imagem--desktop {
    display: none;
}

.cartao--destaque {
    margin-bottom: 16px;
}

.cartao__conteudo {
    padding: 16px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 8px;
}

.cartao__picos-similiares-conteudo {
    padding: 16px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 8px;
}

.cartao__destaque {
    grid-column: span 2;
}

.cartao__titulo {
    font-size: 1.2rem;
    font-weight: 700;
    grid-column: span 2;
}

.cartao__titulo-picos-similares {
    font-size: 0.9rem;
    font-weight: 600;
    grid-column: span 2;
}

.cartao__perfil {
    color: #95999C;
    font-size: 0.9rem;
    grid-column: span 2;
}

.cartao__picos-similares {
    color: #95999C;
    font-size: 0.9rem;
}

.cartao__info {
    display: flex;
    align-items: center;
    color: #95999C;
}

.cartao__picos-similares-visualizacao {
    display: flex;
    align-items: center;
    color: #95999C;
}

.cartao__info--tempo::before {
    content: "\e90c";
    margin-right: 8px;
}

.cartao__info--comprar::before {
    content: "\e905";
    margin-right: 8px;
}

.cartao__info--visualizacao::before {
    content: "\e90f";
    margin-right: 8px;
}

.cartao__botao {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #0480DC;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    font-size: 0.9rem;
    justify-self: flex-end;
}

.cartao__botao--play::before {
    content: "\e90b";
    font-size: 24px;
}

.cartao__botao--comprar::before {
    content: "\e901";
    font-size: 24px;
}

.cartao__botao--picos::before {
    content: "\e908";
    font-size: 24px;
}

.cartao__botao--destaque {
    width: 100%;
    grid-column: span 2;    
}

.cartao__botao--destaque::before {
    margin-right: 8px;
}

.cartao--recentes {
    display: none;
}

@media screen and (min-width: 1440px) {
    .cartao--destaque {
        margin: 0;
    }

    .cartao__imagem--mobile {
        display: none;
    }

    .cartao__imagem--desktop {
        display: block;
    }

    .cartao__botao--destaque {
        grid-column: auto;
        padding: 16px 8px;
    }

    .cartao--recentes {
        display: grid;
        grid-template-columns: repeat(2, auto);
        align-items: center;
        row-gap: 24px;
        width: 256px;
        padding: 16px;
        box-sizing: border-box;
        align-self: flex-start;
    }

    .cartao--recentes .cartao__titulo {
        grid-column: auto;
    }

    .cartao--picos-similares {
        display: grid;
        grid-template-columns: 1fr;
        align-items: center;
        row-gap: 24px;
        width: 256px;
        box-sizing: border-box;
        align-self: flex-start;
    }

    .cartao__link {
        font-size: 0.8rem;
        font-weight: 600;
        color: #0480DC;
        justify-self: flex-end;
    }

    .cartao__lista {
        display: grid;
        row-gap: 16px;
        grid-column: span 2;
    }

    .cartao__item {
        display: grid;
        grid-template-columns: auto 1fr;
        gap: 8px;
    }

    .cartao__item-thumbnail {
        width: 32px;
        grid-row: span 2;
    }

    .cartao__item-titulo {
        font-size: 0.9rem;
        line-height: 1.2rem;
        font-weight: 700;
    }

    .cartao__item-perfil {
        font-size: 0.8rem;
        color: #95999C;
    }
}

.secao {
    display: grid;
    gap: 16px;   
}

@media screen and (min-width: 1440px) {
    .secao {
        grid-template-columns: repeat(4, 1fr);
    }

    .destaque-video {
        grid-area: destaque-video;
    }

    .videos-recentes {
        grid-area: videos-recentes;
    }

    .picos-similares {
        grid-area: picos-similares;
    }

    .secao-videos {
        grid-area: secao-videos;
    }

    .picos__similares-descricao {
        grid-area: picos__similares-descricao;
    }

    .destaque-produtos {
        grid-area: destaque-produtos;
    }

    .produtos-recentes {
        grid-area: produtos-recentes;
    }

    .secao-produtos {
        grid-area: secao-produtos;
    }
}
solução!

Na verdade, consegui ao arriscar colocar os elementos dentro da mesma seção do mapa.