Quando eu coloco a pseudo-classe 'Hover' ela simplesmente não funciona. Só funciona caso eu clique no elemento.
Quando eu coloco a pseudo-classe 'Hover' ela simplesmente não funciona. Só funciona caso eu clique no elemento.
Olá, Jean.
Tudo bem?
Para poder te ajudar eu preciso ver como está o seu código. Poderia compartilhar aqui por gentileza? Pode copiar os códigos HTML e CSS e colar aqui mesmo. Meu muito obrigado.
Sigo aguardando.
Oi, Renan. Estou ótimo, grato. Aqui estão os códigos HTML:
<header class="cabecalho">
<div class="container">
<input type="checkbox" id="menu" class="container__botao">
<label for="menu" class="container__rotulo">
<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 AluraBooks" class="container__imagem">
<h1 class="container__titulo"><b class="container__titulo--negrito">Alura</b>Books</h1>
</div>
<ul class="opcoes">
<input type="checkbox" id="opcoes__menu" class="opcoes__botao">
<label for="opcoes__menu" class="opcoes__rotulo">
<li class="opcoes__item">Categorias</li>
</label>
<ul class="lista-menu">
<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>
<li class="opcoes__item"><a href="#" class="opcoes__link">Favoritos</a></li>
<li class="opcoes__item"><a href="#" class="opcoes__link">Minha estante</a></li>
</ul>
<div class="container">
<a href="#"><img src="/img/Favoritos.svg" alt="meus favoritos" class="container__imagem container__imagem-transparente"></a>
<a href="#" class="container__link">
<img src="/img/Compras.svg" alt="carrinho de compras" class="container__imagem">
<p class="container__texto">Minha sacola</p>
</a>
<a href="#" class="container__link">
<img src="/img/Usuário.svg" alt="Meu perfil de usuário" class="container__imagem">
<p class="container__texto">Meu perfil</p>
</a>
</div>
</header>
E aqui está o CSS:
.cabecalho__menu-hamburguer {
height: 50px;
width: 55px;
background-position: center;
background-image: url("../img/Menu.svg");
display: inline-block;
background-repeat: no-repeat;
}
.container__botao:checked ~ .container__rotulo > .cabecalho__menu-hamburguer {
background-image: url("../img/menu-aberto.svg");
}
.container__botao:checked ~ .container__rotulo {
background: var(--azul-gradiente);
}
.cabecalho {
background-color: var(--branco);
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
}
.container {
display: flex;
align-items: center;
}
.container__imagem {
padding: 0.5em;
}
.lista-menu {
display: none;
position: absolute;
top: 100%;
width: 60vw;
background-color: var(--branco);
}
.container__botao, .container__conteudo, .opcoes__botao, .container__texto, .opcoes {
display: none;
}
.container__botao:checked ~ .lista-menu {
display: block;
}
.lista-menu__item, .lista-menu__titulo {
padding: 2em 0 1em 1em;
text-transform: uppercase;
}
.lista-menu__titulo {
color: var(--laranja);
font-weight: 700;
}
.lista-menu__link {
text-decoration: none;
background: var(--azul-gradiente);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-transform: uppercase;
}
.container__titulo {
font-family: var(--fonte-secundaria);
display: none;
}
@media screen and (min-width: 1024px) {
.cabecalho__menu-hamburguer, .container__imagem-transparente, .imagem__favoritos, .container__conteudo, .opcoes__botao {
display: none;
}
.opcoes {
display: flex;
margin-top: 1em;
}
.opcoes__botao:checked ~ .opcoes__rotulo > .opcoes__item {
color: var(--branco);
}
.opcoes__botao:checked ~ .opcoes__rotulo {
background: var(--azul-gradiente);
}
.opcoes__item {
padding: 1em 1em 2em 1em;
text-transform: uppercase;
}
.opcoes__link {
text-decoration: none;
color: var(--preto);
text-transform: uppercase;
}
.container__titulo {
display: inline;
font-weight: 400;
font-size: 30px;
}
.container__titulo--negrito {
font-weight: 700;
}
.container__imagem {
margin: 0 1em;
}
.container__conteudo {
display: inline;
}
.cabecalho__link {
text-decoration: none;
color: var(--preto);
text-transform: uppercase;
}
.opcoes__botao:checked ~ .lista-menu{
display: block;
}
.lista-menu {
width: 20vw;
}
.lista-menu__item:hover {
background: var(--azul-gradiente);
}
.lista-menu__item:hover > .lista-menu__link {
-webkit-text-fill-color: var(--branco);
}
}
@media screen and (min-width: 1728px) {
.container__texto {
display: flex;
}
.container__link {
display: flex;
align-items: center;
text-decoration: none;
font-size: 20px;
color: var(--preto);
}
.cabecalho {
padding: 0 2em;
}
.opcoes {
margin-right: auto;
}
}
Você está com a ferramenta do desenvolvedor aberta e com aquela opção que deixa a tela com as dimensões responsivas? Se sim, o mouse é substituído por um círculo, que irá simular o dedo do usuário (então nesse caso ele perde a função de hover). Tenta fechar a ferramenta do desenvolvedor e aí testar novamente que acho que irá funcionar.