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

[Dúvida] Botão de favoritos não está sumindo em resolução maior que 1024px

Foi pedido na aula que utilizasse o media query para que o botão de favoritos sumisse, contudo, o meu não some. HTML:

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>AluraBooks</title>
    <link rel="stylesheet" href="reset.css">
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;700&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="https://unpkg.com/swiper@8/swiper-bundle.min.css" />
    <link href="https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@400;700&display=swap" rel="stylesheet">
    <link rel="stylesheet" href="styles.css">
    <body>
        <header class="cabecalho">
            <div class="container">
                <input type="checkbox" id="menu" class="container__botao">
                <label for="menu">
                 <span class="cabecalho__menu-hamburguer container__imagem"> </span>
                </label>
                <ul class="lista-menu">
                    <li class="lista-menu__titulo">Categorias</li>
                    <li class="lista-menu__item">
                        <a href="#" class="lista-menu__link"> Programação</a> 
                    </li>
                    <li class="lista-menu__item">
                        <a href="#" class="lista-menu__link"> Front-End</a> 
                    </li>
                    <li class="lista-menu__item">
                        <a href="#" class="lista-menu__link"> Infraestrutura</a> 
                    </li>
                    <li class="lista-menu__item">
                        <a href="#" class="lista-menu__link"> Business</a> 
                    </li>
                    <li class="lista-menu__item">
                        <a href="#" class="lista-menu__link"> Design & UX</a> 
                    </li>
                </ul>
        <img src="img/Logo.svg" alt="Logo da Alura Books" class= "container__imagem">
        <h1 class="container__titulo"> <b class="container__titulo--negrito">Alura</b>Books</h1>
    </div>
    <ul class="opcoes">
        <li class="opcoes__item">Categorias</li>
        <li class="opcoes__item"> <a href="#" class=opcoes__link></a>Favoritos</li>
        <li class="opcoes__item"><a href="#" class=opcoes__link></a>Minha estante</li>
    </ul>
    <div class="container"> 
        <a href="#"><img src="img/Favoritos.svg" class= "container__imagem" class="container__imagem-transparente"> </a>
        <a href="#"><img src="img/Compras.svg" class= "container__imagem"></a>
        <a href="#"><img src="img/Usuario.svg" class= "container__imagem"></a>
    </div>

    </body>

CSS:

.cabecalho__menu-hamburguer{
    width: 24px;
    height: 24px;
    background-image:url("../img/Menu.svg");
    background-repeat: no-repeat;
    background-position: center;
    display: inline-block;

}
.cabecalho {
    background-color:var(--branco);
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}
.container{
    display: flex;
    align-self: center;

}
.container__imagem{
    padding: 1em;
}
.lista-menu{
    display: none;
    position:absolute;
    top:100%;
    width: 60vw;

}
.container__botao:checked~.lista-menu{
    display: block;
}
.lista-menu__titulo, .lista-menu__item{
    padding: 1em;
    background-color: var(--branco);


}
.lista-menu__titulo {
    color:var(--laranja);
    font-weight:700;
}
.lista-menu__link{
    background: var(--azul-degrade);
    -webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-transform:uppercase;
}
.container__botao{
    display:none;
}
.container__titulo{
    display: none;

}
.opcoes{
    display: none;
}
.opcoes__link{
    display: none;
}
@media screen and (min-width: 1024px) {

    .container__titulo,
    .container__titulo--negrito {
        font-family: var(--fonte-secundario);
        font-size: 30px;
    }

    .container__titulo {
        font-weight: 400;
        display: block;
    }

    .container__titulo--negrito {
        font-weight: 700;
    }

.opcoes{
    display: flex;

}
.opcoes__item{
    padding: 0 1em;
    text-transform: uppercase;
}
.opcoes__link{
    text-decoration: none;
    color:var(--preto);
}
.container__imagem-transparente{
    display:none;
}
.container__imagem-transparente{
    display: none;
}
}
2 respostas
solução!

O problema está nesse elemento:

    <a href="#"><img src="img/Favoritos.svg" class= "container__imagem" class="container__imagem-transparente"> </a>

Você pode adicionar quantas classes quiser num elemento, mas "class" só pode ser iniciado uma vez por elemento. No seu caso, você inicia duas vezes, fazendo ele considerar apenas a primeira: class= "container__imagem" e ignorando a segunda: class="container__imagem-transparente"

Para corrigir, basta remover a segunda chamada, e escrever na primeira chamada class= "container__imagem container__imagem-transparente"

Além disso, seria legal desaparecer não apenas a imagem, mas sua ancora também. É uma opinião pessoal, mas faria o display: none na tag que está englobando a imagem. Assim, tanto a imagem como o link vai desaparecer

Olá! Muito obrigada pela resposta, não tinha percebido o erro. Vou considerar essas alterações :)