4
respostas

Elementos do Header não ficam um ao lado do outro horizontalmente.

Fala, pessoal, tudo tranquilo ?

Tentei inserir o header na página do "index", porém, os itens não ficam lateralizados. Códigos e imagem do "index" seguem em anexo!

*CSS: *

header {
    background: #BBBBBB;
    padding: 20px 0;
}

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

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

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

nav a {
    text-transform: uppercase;
    color: #000000;
    font-weight: bold;
    font-size: 22px;
    text-decoration: none;
}

nav a: hover {
    color: #C78C19;
    text-decoration: underline;
}


#banner {
    width: 100%;
}

.principal {
    background: #CCCCCC;
    padding: 10px;
}

.titulo-centralizado {
    text-align:center;
    font-weight: bold;
    font-size: 25px;
}

p {
    text-align:center;
}

#missao {
    font-size:20px;
}

em strong {
    color: red;
}


.beneficios {
    background: #FFFFFF;
    padding: 20px;
    font-size: 22px;
}

.itens {
    font-style: italic;
    padding:10px;
}

ul {
    display: inline-block;
    vertical-align:top;
    width: 20%;
    margin-right: 15%;
}

.imagembeneficios {
    width: 50%;
}

footer {
    text-align: center;
    background: url("bg.jpg");
    padding: 40px 0;
}

.copyright {
    color: #FFFFFF;
    font-size: 13px;
    margin: 20px 0;
}

*HTML: *

<!DOCTYPE html>

<html lang="pt-br">

    <head>
        <meta charset="UTF-8">
        <title>Barbearia Alura</title>
         <link rel="stylesheet" href="reset.css">
        <link rel="stylesheet" href="style.css">
    </head>

    <body>
        <header>
            <div class="caixa">
                <h1><img src="logo.png"></h1>
                <nav>
                    <ul>
                        <li><a href="index.html">Home</a></li>
                        <li><a href="produtos.html">Produtos</a></li>
                        <li><a href="contato.html">Contato</a></li>
                    </ul>
                </nav>
            </div>
        </header>
        <img id= "banner" src="banner.jpg">
        <div class="principal">

            <h2 class="titulo-centralizado">Sobre a Barbearia Alura</h2><br>

            <p>Localizada no coração da cidade a <strong>Barbearia Alura</strong> traz para o mercado o que há de melhor para o seu cabelo e barba. Fundada em 2019, a Barbearia Alura já é destaque na cidade e conquista novos clientes a cada dia.</p><br>

            <p id="missao"><em>Nossa missão é: <strong>"Proporcionar auto-estima e qualidade de vida aos clientes"</strong>.</em></p><br>

            <p>Oferecemos profissionais experientes e antenados às mudanças no mundo da moda. O atendimento possui padrão de excelência e agilidade, garantindo qualidade e satisfação dos nossos clientes.</p>

        </div>

        <div class="beneficios">
            <h3 class="titulo-centralizado">Benefícios</h3>
            <ul>
                <li class="itens">Atendimento aos Clientes</li>
                <li class="itens">Espaço diferenciado</li>
                <li class="itens">Localização</li>
                <li class="itens">Profissionais Qualificados</li>
            </ul>

            <img src="beneficios.jpg" class="imagembeneficios">
        </div>

        <footer>
            <img src="logo-branco.png">
            <p class="copyright">&copy; Copyright Barbearia Alura - 2019</p>

        </footer>


    </body>

</html>

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

4 respostas

Olá, Victor.

Tudo bem?

Isso acontece porque você tem duas listas na página, a lista <ul> do <header> e a lista beneficios, no CSS você definiu a lista só como ul só pela tag então está muito genérico, isso está impactando nas duas listas, para corrigir basta adicionar uma classe na <ul> ou acessar no CSS pela classe da tag pai por exemplo:

HTML:

#

<div class="beneficios">
            <h3 class="titulo-centralizado">Benefícios</h3>
            <ul>
                <li class="itens">Atendimento aos Clientes</li>
                <li class="itens">Espaço diferenciado</li>
                <li class="itens">Localização</li>
                <li class="itens">Profissionais Qualificados</li>
            </ul>

            <img src="beneficios.jpg" class="imagembeneficios">
        </div>

CSS:

.beneficios ul {
    display: inline-block;
    vertical-align:top;
    width: 20%;
    margin-right: 15%;
}

Espero ter ajudado.

Qualquer dúvida conta com a gente!

Valeu!

Muito bom! Eu estava com a mesma dúvida e comendo as unhas hehehe

Renan, primeiramente, muito obrigado pela ajuda !

Revisei a parte do HTML e percebi uma coisa: bastou eu colocar os elementos do header na mesma linha, no HTML, que deu certo !

Ficou assim o Header:

 <header>
            <div class="caixa">
                <h1><img src="logo.png"></h1>
                <nav>
                    <ul>
                        <li><a href="index.html">Home</a></li><li><a href="produtos.html">Produtos</a></li><li><a href="contato.html">Contato</a></li>
                    </ul>
                </nav>
            </div>
        </header>

Olá, Victor.

Mas no HTML colocar na mesma linha ou um embaixo do outro não deveria fazer diferença, o que pode dar diferença falando de HTML é a ordem das coisas na estrutura, tipo quem vem primeiro e quem vem depois. Muito estranho isso.

Valeu pelo feedback.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software