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

NÃO CONSIGO ALINHAR O TÍTULO DA MINHA LOGO

Não estou conseguindo alinhar o título da minha logo com a logo principal. Estava tentando usar o comando top: 90px, mas não vai. Ela sempre fica nivelada na parte de baixo da logo. Será que é alguma coisa no reset.css que está impossibilitando isso? Eu gostaria que ela ficasse na parte da direita no centro, com indicado na imagem a seguir:

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

CÓDIGO NO HTML:

<!DOCTYPE html>
<hmtl lang="pt-br">
    <head>
        <meta charset="UTF-8">
        <title>Gestação Saudável</title>
        <link rel="stylesheet" href="resett.css">
        <link rel="stylesheet" href="style.css">
        <link href="https://fonts.googleapis.com/css2?family=Source+Serif+Pro:wght@300;400&display=swap" rel="stylesheet">
    </head>
    <body>
        <header>
            <div class="caixa"> 
                <img id="logoEscura" src="logo escura.png" alt="Logo do Projeto CuidarLab">
                <h1 class="titulo-logo">Bem vindo(a) ao CuidarLab</h1>

                <nav>
                    <ul>
                        <li><a href="index.html">Home</a></li>
                        <li><a href="produto.html">Produtos</a></li>
                        <li><a href="contato.html">Contatos</a></li>
                    </ul>
                </nav>
            </div>
        </header>

CÓDIGO CSS:

/* CABEÇALHO */

header {
    background: #c6dde4;
    padding: 15px 0;
}

.caixa {
    position: relative;
    width: 1100px;
    margin: 0 auto;
}

#logoEscura {
    display: inline-block;
    width: 13%;
    padding: 15px 20px;
}

.titulo-logo {
    display: inline-block;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: bold;
    color: rgb(151, 126, 126);
}

nav {
    position: absolute;
    top: 85px;
    right: 0;
}

nav li {
    display: inline;
    margin: 0 0 0 20px;
}

nav a {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 30px;
    color: rgb(151, 126, 126);
}

nav a:hover {
    color: #eeb74a;
    text-decoration: underline;
}
2 respostas
solução!

Olá!

Para alinhar verdadeiramente o conteúdo ao centro, sem depender de chutes aproximados, recomendo mudar a estratégia e utilizar flexbox.

A alternativa da imagem abaixo foi feita utilizando display: flex (adaptei o logo só pra fazer o teste kkkk). Print da tela com o resultado da solução para centralizar o conteúdo verticalmente

Agora vamos para as alterações realizadas:

1 - No HTML, adicionei uma div ao redor do logo e do texto h2 e criei uma classe chamada brand.

<header>
    <div class="caixa">
        <div class="brand">
            <img id="logoEscura" src="twitter-logo-3.png" alt="Logo do Projeto CuidarLab">
            <h1 class="titulo-logo">Bem vindo(a) ao CuidarLab</h1>
        </div>

        <nav>
            <ul>
                <li><a href="index.html">Home</a></li>
                <li><a href="produto.html">Produtos</a></li>
                <li><a href="contato.html">Contatos</a></li>
            </ul>
        </nav>
    </div>
</header>

2 - No CSS, removi as propriedades que posicionavam o cabeçalho de forma absoluta para uma alternativa flex.

.caixa {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    width: 1100px;
}

.brand {
    align-items: center;
    display: flex;
}

#logoEscura {
    padding: 15px 20px;
    width: 128px;
}

.titulo-logo {
    color: rgb(151, 126, 126);
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
}

nav {
    /* Estilização removida */
}

Obrigado Douglas, o problema foi resolvido!!!!