1
resposta

Logo desktop não aparece

A logo que aparece continua sendo a do mobile, não a do desktop.

Trecho:

<a class="logo" href="index.html" title="Voltar para a página inicial">
        <img 
          class="logo-mobile"
          src="img/bussola-jornada-branca.png"
          alt="Bussola do logo Jornada Viagens na cor branca"
        />
        <img 
          class="logo-desktop"
          src="img/bussola-texto-jornada-branco.png"
          alt="Bussola do logo Jornada Viagens na cor branca"
        />
        
      </a>
  A imagem mostrada continua sendo a do mobile.
  
  CSS:
  
header{
background-color: var(--background-tertiary-color);
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: flex-start;
padding: 38px 48px;
position: relative;
}

.logo {
display: inline-block;
width: 68px;
height: 64px;
}



.logo-mobile {
display: block;
}

.logo-desktop {
display: none;
}

.navigation-menu {
margin-top: 24px;
}

input[type="checkbox"]:checked ~ nav {
display: block;
position: absolute;
top: 100%;
left: 0;
width: 100%;
background-color: var(--background-tertiary-color);
}

nav {
display: none;
}

.list-links li a {
color: var(--text-secondary-color);
text-decoration: none;
font-weight: var(--menu-text-weight);
font-size: 24px;
}

.list-links li {
margin: 16px 0;
}

.list-links {
list-style: none;

}

@media screen and (min-width: 768px) {

.navigation-menu {
  margin-top: 0;
  width: 467px;
}

.navigation-menu label {
  display: none;
}

.navigation-menu nav {
  display: block;
}

.navigation-menu ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0;
}

.navigation-menu li {
  margin: 0;
}

}

@media screen and (min-width: 1024px) {

.logo-desktop {
  display: block;
}

.logo-mobile {
  display: none;
}
}

Vocês conseguem encontrar o erro?

1 resposta

Oii Ana, como você está?

Muito legal ver você praticando responsividade no projeto Jornada Viagens. A sua lógica com display: none e display: block dentro do @media screen and (min-width: 1024px) está correta.

O ponto é que a classe pai .logo está com tamanho fixo de mobile:

.logo {
  display: inline-block;
  width: 68px;
  height: 64px;
}

Como o logo desktop é mais largo, ele fica limitado dentro dessa caixinha. Para resolver, ajuste o tamanho da .logo no media query de desktop:

@media screen and (min-width: 1024px) {
  .logo {
    width: auto;
    height: auto;
  }

  .logo-desktop {
    display: block;
  }

  .logo-mobile {
    display: none;
  }
}

Também vale conferir se a janela do navegador está realmente com mais de 1024px ao testar. Pelo DevTools, com F12, você consegue acompanhar a largura da tela com mais precisão.

Conte sempre com a Alura para evoluir seus estudos. Em caso de dúvidas, estou à disposição.

Bons estudos!

Sucesso

Imagem da comunidade