1
resposta

RESOLVIDO! ERRO DE DIGITAÇÃO.

Boa tarde! O menu não se comporta como na aula, ao recarregar o navegador o menu continua na mesma posição e ao clicar no icone do menu não acontece nada. Mesmo copiando e colando o código não funciona, alguém poderia me ajudar? Segue os três códigos: HTML

    <header class="cabecalho"> <!--É um flex-container/ para que seus filhos sejam alterados para justify-content e align-items.-->
        <button class="cabecalho__menu" aria-label="Menu"><i></i></button>
        <img src="assets/img/logo.svg" alt="Logotipo da HZC" class="cabecalho__logo">
        <button class="cabecalho__notificacao" aria-label="Notificação"><i></i></button>
    </header>
    <nav class="menu-lateral menu-lateral--ativo">
        <img src="assets/img/logo.svg" alt="Logotipo da HZC" class="menu-lateral__logo">
        <a href="#" class="menu-lateral__link menu-lateral__link-inicio menu-lateral__link--ativo">Início</a>
        <a href="#" class="menu-lateral__link menu-lateral__link-videos menu-lateral__link--ativo">Videos</a>
        <a href="#" class="menu-lateral__link menu-lateral__link-picos menu-lateral__link--ativo">Picos</a>
        <a href="#" class="menu-lateral__link menu-lateral__link-integrantes menu-lateral__link--ativo">Integrantes</a>
        <a href="#" class="menu-lateral__link menu-lateral__link-camisas menu-lateral__link--ativo">Camisas</a>
        <a href="#" class="menu-lateral__link menu-lateral__link-pinturas menu-lateral__link--ativo">Pinturas</a>
    </nav>
    <script scr="index.js"></script>
</body>
</html>

CSS

.menu-lateral {
    display: flex;
    flex-direction: column;
    background-color: #15191C;
    width: 75vw;
    height: 100vh;
    position: absolute;
    left: -100vw;
}
.menu-lateral--ativo {
    left: 0;
}
.menu-lateral__logo {
    align-self: center;
    width: 180px;
    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 {
    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";
}

JS

const botaoMenu = document.querySelector('.cabecalho__menu');
const menu = document.querySelector('.menu-lateral');

botaoMenu.addEventListener('click', () => { 
    menu.classList.toggle('menu-lateral--ativo');
})
1 resposta

O código JavaScript feito na aula é montado com a seguinte tarefa: trocar as classes da "nav" entre ".menu-lateral" e ".menu-lateral--ativo', porém seu código esta com ambas elas na classe, experimente deixar somente a ".menu-lateral" como abaixo:

<nav class="menu-lateral">
        <img src="assets/img/logo.svg" alt="Logotipo da HZC" class="menu-lateral__logo">
        <a href="#" class="menu-lateral__link menu-lateral__link--inicio menu-lateral__link--ativo">Inícios</a>
        <a href="#" class="menu-lateral__link menu-lateral__link--videos">Vídeos</a>
        <a href="#" class="menu-lateral__link menu-lateral__link--picos">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>

espero ter ajudado até um instrutor te responder devidamente