4
respostas

Desafio do fim da aula - lista do <hearder> não fica alinhada na horizontal

Boa tarde, tentei colocar o cabeçalho e rodapé no index.html copiando os códigos de produtos.html e suas respectivas .CSS To aqui há um tempão revisando linha por linha e tentando algumas modificações, mas não estou conseguindo deixar HOME PRODUTOS CONTATOS em linha na página principal.

Grato desde já a quem puder ajudar :D

index.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>

            <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>

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

            <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">© Copyright Barbearia Alura - 2019</p>
        </footer>
    </body>
</html>

style.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-block;
    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: 30px;
    font-weight: strong;
}

.titulo-principal {
    padding-left: 20px;

}

.titulo-centralizado {
    text-align: center
}

p {
    text-align: center;
}

#missao {
    font-size: 20px
}

em strong {
    color: #FF0000;
}

.itens {
    font-style: italic
}

.beneficios {
    background: #FFFFFF;
    padding: 20px;
}

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 0;
}

![](Insira aqui a descrição dessa imagem para ajudar na acessibilidade )

4 respostas

Olá Eduardo.

No trecho

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

você tem um limite de largura para todas as listas da página.

Veja para qual elemento deve ser esse trecho e adicione uma classe para que não seja aplicado para todas as listas.

Abraço.

Olá Renato, tudo bem?

Então, se eu entendi direito essa ul que você se refere, trata-se da lista da parte debaixo do site

  1. *Atendimento aos Clientes
  2. *Espaço diferenciado
  3. *Localização
  4. *Profissionais Qualificados

A que estou tendo problema, é a lista do header, que é essa aqui...

index.html

`<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>`

Quando eu declaro no CSS:

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

 Eu não estou informando que eu quero que oque esteja em a nav  sejam formatados da maneira que declarei?
Acredito que o problema esteja nessa declaração.
Ja tentei criar a classe como sugeriu e continuou igual. :(((((((
Continuo aqui quebrando a cabeça, rsrsrs

Pelo que li no seu codigo, voce pode estar usando a tag errada para escrever o seu css, pois seu " li " esta dentro de uma " ul "

Voce pode tentar trocar essa parte do seu CSS:

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

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

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

Por esse aqui :

.caixa nav ul {
     display: flex;
     flex-direction: row;
     align-items: center;
     justify-content: space-between;
     width: 30%;
     list-style: none;

}

ou adicionando a tag ul no lugar do seu li.

Eduardo.

No css se for usado apenas a tag o estilo será aplicado para todas as suas ocorrencias no html.

Quando usamos uma classe ou id no css conseguimos dizer exatamente qual elemento no html deve ser aplicada a formatação.

Se escrever (assim está no seu css):

ul {
    width: 20%;
}

todas as listas no html terão essa largura (exceto se for sobrescrita por outra declaração no css)

Se escrever:

.minha_classe ul {
    width: 20%;
}

a formatação será aplicada somente na lista dentro da classe minha_classe

Em relação ao seu css style.css postado na pergunta inicial no trecho ul{ ......... ...... }

sugestão,

se sua lista está dentro da nav faça assim:

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

Se for a lista de benefícios faça assim:

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

Abraço.

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