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

dúvida position absolute

Olá, gente =D

<header>
    <!-- conteúdo já existente aqui -->
    <ul>
        <li class="palavra-home eficiencia">Eficiência</li>
        <li class="palavra-home boas-praticas">Boas práticas</li>
        <li class="palavra-home codigo-limpo">Código limpo</li>
        <li class="palavra-home css3">CSS3</li>
        <li class="palavra-home html5">HTML5</li>
        <li class="palavra-home javascript">JavaScript</li>
        <li class="palavra-home acessibilidade">Acessibilidade</li>
        <li class="palavra-home responsivo">Responsivo</li>
        <li class="palavra-home otimizacoes">Otimizações</li>
        <li class="palavra-home agilidade">Agilidade</li>
        <li class="palavra-home design">Design</li>
    </ul>
</header>

No texto antes do código abaixo, o professor cita que em ".eficiencia" deve-se usar o "position: absolute;" . No entanto, no código abaixo so aparece "position: absolute;" em ".palavra-home". Eu acho que deveria ter "position: absolute;" em: ".eficiencia, .boas-práticas......até o último que é .design". Estou correto?

.palavra-home {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;

}

.eficiencia {
    top: 20%;
    left: 75%;
}

.boas-praticas {
    top: 70%;
    left: 20%;
}

.codigo-limpo {
    top: 45%;
    left: 10%;
}

.css3 {
    top: 50%;
    left: 30%;
}

.html5 {
    top: 40%;
    left: 80%;
}

.javascript {
    top: 10%;
    left: 60%;
}

.acessibilidade {
    top: 30%;
    left: 25%;
}

.responsivo {
    top: 15%;
    left: 15%;
}

.otimizacoes {
    top: 60%;
    left: 70%;
}

.agilidade {
    top: 10%;
    left: 30%;
}

.design {
    top: 35%;
    left: 65%;
}

Outra dúvida: um trecho do html da aula está assim:

<li class="palavra-home eficiencia">Eficiência</li>

Logo, a classe ".palavra-home" é uma classe pai das demais classes: ".eficiencia, .boas-práticas..."? Eu nao entendi porque no .css acima, em vez dele colocar

".palavra-home .eficiencia {} "

ele so colocou ".eficiencia {}"

Vlwww pela ajuda gente =D

2 respostas
solução!

Boa tarde Raul,

O código abaixo quer dizer que cada <li> possui duas classes diferentes: "palavra-home", e outra especifica da palavra a ser exibida ("eficiencia", "boas-praticas", ... ).

<header>
    <!-- conteúdo já existente aqui -->
    <ul>
        <li class="palavra-home eficiencia">Eficiência</li>
        <li class="palavra-home boas-praticas">Boas práticas</li>
        <li class="palavra-home codigo-limpo">Código limpo</li>
        <li class="palavra-home css3">CSS3</li>
        <li class="palavra-home html5">HTML5</li>
        <li class="palavra-home javascript">JavaScript</li>
        <li class="palavra-home acessibilidade">Acessibilidade</li>
        <li class="palavra-home responsivo">Responsivo</li>
        <li class="palavra-home otimizacoes">Otimizações</li>
        <li class="palavra-home agilidade">Agilidade</li>
        <li class="palavra-home design">Design</li>
    </ul>
</header>

Como são duas classes o navegador primeira irá interpretar as configurações da classe "palavra-home" e depois a outra classe.

A classe "palavra-home" é uma classe genérica, ela possui todas as configurações comuns das demais classes. Com isto as configurações da classe "palavra-home" não precisam ser repetidas nas demais classes.

Sem a classe "palavra-home", que é genérica, o código ficaria assim:

.eficiencia {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 20%;
    left: 75%;
}

.boas-praticas {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 70%;
    left: 20%;
}

.codigo-limpo {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 45%;
    left: 10%;
}

.css3 {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 50%;
    left: 30%;
}

.html5 {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 40%;
    left: 80%;
}

.javascript {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 10%;
    left: 60%;
}

.acessibilidade {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 30%;
    left: 25%;
}

.responsivo {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 15%;
    left: 15%;
}

.otimizacoes {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 60%;
    left: 70%;
}

.agilidade {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 10%;
    left: 30%;
}

.design {
    position: absolute;
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    top: 35%;
    left: 65%;
}

Se você quiser alterar a cor da letra por exemplo, terá que fazer a alteração em todas as classes. Utilizando uma classe genérica como a "palavra-home" seria necessário fazer a alteração somente uma vez.

Espero ter ajudado.

vlwww Deividh, agora entendi, muito obrigado pelo help =D