7
respostas

Palavras-chave espalhadas

Depois dessa fase as palavras chave ficaram espalhadas para fora do "header". Onde eu errei? Como corrigir?

<!DOCTYPE html>
<html lang="pt">
<head>
    <meta charset="UTF-8">
    <title>João da Silva - Desenvolvedor Web</title>
    <link rel="shortcut icon" href="imagens/favicon.png">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/site.css">
    <link rel="stylesheet" href="css/index.css">
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Crimson+Text:400,400italic,600">
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans+Condensed:700">
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Shadows+Into+Light">
    <link href="https://fonts.googleapis.com/css?family=Shadows+Into+Light" rel="stylesheet">
</head>
<body>
    <header class="titulo-principal">
        <img class="foto-home" src="imagens/eu.jpg" alt="Foto de João da Silva">
        <h1>João da Silva</h1>
        <p class="subtitulo-principal">Desenvolvedor web</p>
        <a href="#" class="etiqueta-twitter">Siga-me no Twitter</a>
        <ul class="palavras-chave">
            <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>
    <main>
        <section class="secao-inicio saudacao">
            <p class="saudacao"><span class="saudacao-inicio">Olá,</span> meu nome é <strong>João da Silva</strong> <span class="saudacao-ultima-linha">e eu construo <em>sites maravilhosos</em></span></p>
            <a class="botao-index" href="bio.html">Conheça mais um pouco sobre mim</a>
        </section>
        <section class="secao-inicio trabalhos">
            <h2>Trabalhos</h2>
            <ul>
                <li><img src="imagens/bmw.png" alt="Site da BMW"></li>
                <li><img src="imagens/ibm.png" alt="Site da IBM"></li>
                <li><img src="imagens/uol.png" alt="Site da UOL"></li>
            </ul>
            <a class="botao-index" href="portfolio.html">Veja mais</a>
        </section>
        <section class="secao-inicio blog">
            <h2>Blog</h2>
            <small>Últimos posts</small>
            <ol>
                <li class="mais-recente">
                    <a href="blog.html">O essencial de design responsivo</a>
                    <p class="inicio-post">
                    Design responsivo tem ganho cada vez mais atenção como técnica de desenvolvimento de páginas web para dispositivos móveis. Mas como começar?
                    </p>
                </li>
                <li>
                    <a href="blog.html">Por que fazer páginas acessíveis?</a>
                </li>
                <li>
                    <a href="blog.html">JavaScript não obstrusivo</a>
                </li>
            </ol>
            <a class="botao-index" href="blog.html">Veja mais</a>
        </section>
    </main>
    <footer>
        <h2>Vamos conversar?</h2>
        <p>Você pode entrar em contato comigo <a href="contato.html">por e-mail</a> ou pelo telefone <a href="tel:+551234567890">(12) 3456-7890</a></p>
    </footer>
</body>
</html>

E o css

.foto-home {
    height: 200px;
    border-radius: 50%;
}
.saudacao p {
    font-size: 1.5em;
    color: #99A;
    line-height: 1;
    padding: 2em;
}
.saudacao-inicio {
    font-size: 3em;
    color: #889;
}
.saudacao-ultima-linha {
    text-align: right;
    display: block;
}
.saudacao strong {
    font-size: 2em;
    color: #000;
}
.saudacao em {
    color: #851944;
    font-size: 4em;
    display: inline-block;
    transform: skewX(-10deg) rotate(-5deg);
}
.botao-index {
    font-size: 1.25em;
    background-color: #851944;
    color: #FFF;
    padding: .5em;
    border: .2em solid black;
    width: 40ch;
    margin: 2em auto;
    display: block;
    text-align: center;
}
.secao-inicio {
    padding: 2em;
    position: relative;
}
.secao-inicio h2 {
    font-size: 3em;
    text-transform: uppercase;
    margin-bottom: .5em;
}
.trabalhos {
    background-color: #3C1D3D;
    border-top: .5em solid #000;
    border-bottom: .5em solid #000;
}
.trabalhos h2 {
    color: #FFF;
}
.trabalhos ul {
    overflow: hidden;
    border: .5em solid black;
}
.trabalhos li {
    float: left;
    width: 33.333%;
}
.trabalhos img {
    width: 100%;
    display: block;
}
.blog {
    background-color: #999;
    color: #FFF;
    border-bottom: .5em solid #851944;
}
.blog small {
    position: relative;
    top: -2em;
}
.blog li a {
    color: #FCF;
    padding: .5em;
    display: block;
}
footer {
    background-color: #000;
    color: #FFF;
    padding: 2em;
}
footer h2 {
    font-size: 3em;
}
footer a {
    color: #F99;
}
main {
    width: 100%;
    padding-bottom: 0;
    float: none;
}
.inicio-post {
    position: absolute;
    top: 3em;
    right: 3em;
    height: 8em;
    left: 30%;
    padding: 1.5em;
    width: 65%;
    color: #000;
    background-color: #F2FFFC;
}
header {
    position: relative;
}
.palavra-home {
    color: #D5447E;
    font-family: 'Shadows Into Light', cursive;
    position: absolute;
}
/*posicionamento das palavras-chave do cabeçalho*/

.eficiencia {
    top: 20%;
    left: 30%;
    transform: rotate(-5deg) translateZ(4px) translate(50%, 50%);
}
.boas-praticas {
    top: 45%;
    left: 21%;
    transform: rotate(-10deg) translateZ(1px) translate(50%, 50%);
}
.codigo-limpo {
    top: 85%;
    left: 25%;
    transform: rotate(-10deg) translateZ(2px) translate(50%, 50%);
}
.css3 {
    top: 15%;
    right: 15%;
    transform: rotate(5deg) translateZ(2px) translate(50%, 50%);
}
.html5 {
    top: 38%;
    right: 10%;
    transform: rotate(10deg) translateZ(2px) translate(50%, 50%);
}
.javascript {
    top: 60%;
    right: 20%;
    transform: rotate(-5deg) translateZ(1px) translate(50%, 50%);
}
.acessibilidade {
    top: 22%;
    right: 40%;
    transform: rotate(-5deg) translateZ(3px) translate(50%, 50%);
}
.responsivo {
    top: 80%;
    right: 10%;
    transform: rotate(10deg) translateZ(3px) translate(50%, 50%);
}
.otimizacoes {
    top: 15%;
    left: 5%;
    transform: rotate(-5deg) translateZ(2px) translate(50%, 50%);
}
.agilidade {
    top:70%;
    left: 9%;
    transform: rotate(5deg) translateZ(1px) translate(50%, 50%);
}
.design {
    top: 25%;
    left: 35%;
    transform: rotate(10deg) translateZ(2px) translate(50%, 50%);
}
.blog .mais-recente {
    background-color: #F2FFFC;
}
.blog .mais-recente a {
    color: #f26;
}
.blog li {
    width: 30%;
}
.etiqueta-twitter {
    background-color: #3C1D3D;
    border: solid .25em black;
    position: absolute;
    top: 0;
    right: 0;
    width: 14em;
    padding: 1em 0;
    line-height: 1;
    transform-origin: 0 0;
    box-sizing: border-box;
    text-align: center;
    text-decoration: none;
    color: white;
    font-size: 1.2em;
    font-family: "Open Sans Condensed", sans-serif;
    transform: translate(6.5765em, -2.4745em) rotate(45deg);
}
.titulo-principal ul {
    perspective: 6px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
header {
    perspective: 6px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    }
7 respostas

Oi Júlio, td bem?

Provavelmente é porque vc não colocou position:relative; no header.

Tenta adicionar isso aqui ao seu CSS.

.titulo-principal {
    position: relative;
}

Abração! Qqr coisa só perguntar (:

Yuri,

Tinha esquecido mesmo do "position: relative", mas mesmo depois de corrigir esse erro ainda não funcionou.

Opa Júlio, tenta tirar essa propriedade perspectivedos elementos, acho que é ela q ta dando problema, vê se é isso mesmo (:

Tirar o "perspective" de quais elementos? As palavras do header não tem essa propriedade. Detalhe: as palavras da ponta, aquelas com position mais extremos, como por exemplo, left: 80%, ficaram com uma parte fora da tela, e isso eu corrigi diminuindo o left. Ou seja, eu ajustei a posição de todas para que elas ficassem dentro da janela. Porém fica a dúvida, elas não deveriam estar limitadas ao Header? Outro detalhe: depois que apliquei o font-size: 400% e scale(.25), as palavras bagunçaram mais ainda. Segue o código:

<!DOCTYPE html>
<html lang="pt">
<head>
    <meta charset="UTF-8">
    <title>João da Silva - Desenvolvedor Web</title>
    <link rel="shortcut icon" href="imagens/favicon.png">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/site.css">
    <link rel="stylesheet" href="css/index.css">
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Crimson+Text:400,400italic,600">
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans+Condensed:700">
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Shadows+Into+Light">
</head>
<body>
    <header class="titulo-principal">
        <img class="foto-home" src="imagens/eu.jpg" alt="Foto de João da Silva">
        <h1>João da Silva</h1>
        <a href="#" class="etiqueta">Siga-me no Twitter</a>
        <p class="subtitulo-principal">Desenvolvedor web</p>
        <ul class="palavras-cabecalho">
            <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>
    <main>
        <section class="secao-inicio saudacao">
            <p class="saudacao"><span class="saudacao-inicio">Olá,</span> meu nome é <strong>João da Silva</strong> <span class="saudacao-ultima-linha">e eu construo <em>sites maravilhosos</em></span></p>
            <a class="botao-index" href="bio.html">Conheça mais um pouco sobre mim</a>
        </section>
        <section class="secao-inicio trabalhos">
            <h2>Trabalhos</h2>
            <ul>
                <li><img src="imagens/bmw.png" alt="Site da BMW"></li>
                <li><img src="imagens/ibm.png" alt="Site da IBM"></li>
                <li><img src="imagens/uol.png" alt="Site da UOL"></li>
            </ul>
            <a class="botao-index" href="portfolio.html">Veja mais</a>
        </section>
        <section class="secao-inicio blog">
            <h2>Blog</h2>
            <small>Últimos posts</small>
            <ol>
                <li class="mais-recente">
                    <a href="blog.html">O essencial de design responsivo</a>
                    <p class="inicio-post">
                        Design responsivo tem ganho cada vez mais atenção como técnica de desenvolvimento de páginas web para dispositivos móveis. Mas como começar?
                    </p>
                </li>
                <li>
                    <a href="blog.html">Por que fazer páginas acessíveis?</a>
                </li>
                <li>
                    <a href="blog.html">JavaScript não obstrusivo</a>
                </li>
            </ol>
            <a class="botao-index" href="blog.html">Veja mais</a>
        </section>
    </main>
    <footer>
        <h2>Vamos conversar?</h2>
        <p>Você pode entrar em contato comigo <a href="contato.html">por e-mail</a> ou pelo telefone <a href="tel:+551234567890">(12) 3456-7890</a></p>
    </footer>
</body>
</html>

E o CSS

.foto-home {
    height: 200px;
    border-radius: 50%;
}
.saudacao p {
    font-size: 1.5em;
    color: #99A;
    line-height: 1;
    padding: 2em;
}
.saudacao-inicio {
    font-size: 3em;
    color: #889;
}
.saudacao-ultima-linha {
    text-align: right;
    display: block;
}
.saudacao strong {
    font-size: 2em;
    color: #000;
}
.saudacao em {
    display: inline-block;    
    color: #851944;
    font-size: 4em;
    -webkit-transform: rotate(-10deg) skew(-5deg);
}
.botao-index {
    font-size: 1.25em;
    background-color: #851944;
    color: #FFF;
    padding: .5em;
    border: .2em solid black;
    width: 40ch;
    margin: 2em auto;
    display: block;
    text-align: center;
}
.secao-inicio {
    padding: 2em;
}
.secao-inicio h2 {
    font-size: 3em;
    text-transform: uppercase;
    margin-bottom: .5em;
}
.trabalhos {
    background-color: #3C1D3D;
    border-top: .5em solid #000;
    border-bottom: .5em solid #000;
}
.trabalhos h2 {
    color: #FFF;
}
.trabalhos ul {
    overflow: hidden;
    border: .5em solid black;
}
.trabalhos li {
    float: left;
    width: 33.333%;
}
.trabalhos img {
    width: 100%;
    display: block;
}
.blog {
    background-color: #999;
    position: relative;
    color: #FFF;
    border-bottom: .5em solid #851944;
}
.blog small {
    position: relative;
    top: -2em;
}
.blog li {
    width: 30%;
}
.blog li a {
    color: #FCF;
    padding: .5em;
    display: block;
}
footer {
    background-color: #000;
    color: #FFF;
    padding: 2em;
}
footer h2 {
    font-size: 3em;
}
footer a {
    color: #F99;
}
main {
    width: 100%;
    padding-bottom: 0;
    float: none;
}
.palavras-cabecalho {
    perspective: 6px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.palavras-cabecalho li {
    font-size: 400%;
}
.palavra-home {
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    position: absolute;
}
.eficiencia {
    top: 20%;
    left: 75%;
    transform: translate(-50%, -50%) rotate(-5deg) translateZ(4px) scale(.25);
}
.boas-praticas {
    top: 70%;
    left: 15%;
    transform: translate(50%, 50%) rotate(10deg) translateZ(1px) scale(.25);
}
.codigo-limpo {
    top: 45%;
    left: 15%;
    transform: translate(50%, 50%) rotate(-10deg) translateZ(2px) scale(.25);
}
.css3 {
    top: 50%;
    left: 30%;
    transform: translate(50%, 50%) rotate(5deg) translateZ(2px) scale(.25);
}
.html5 {
    top: 40%;
    left: 73%;
    transform: translate(50%, 50%) rotate(10deg) translateZ(2px) scale(.25);
}
.javascript {
    top: 10%;
    left: 60%;
    transform: translate(50%, 50%) rotate(-5deg) translateZ(1px) scale(.25);
}
.acessibilidade {
    top: 30%;
    left: 25%;
    transform: translate(50%, 50%) rotate(5deg) translateZ(3px) scale(.25);
}
.responsivo {
    top: 15%;
    left: 15%;
    transform: translate(50%, 50%) rotate(10deg) translateZ(3px) scale(.25);
}
.otimizacoes {
    top: 60%;
    left: 67%;
    transform: translate(50%, 50%) rotate(-5deg) translateZ(2px) scale(.25);
}
.agilidade {
    top: 10%;
    left: 30%;
    transform: translate(50%, 50%) rotate(5deg) translateZ(1px) scale(.25);
}
.design {
    top: 35%;
    left: 62%;
    transform: translate(50%, 50%) rotate(10deg) translateZ(2px) scale(.25);
}
.titulo-principal {
    position: relative;
}
.blog .inicio-post {
    position: absolute;
    top: 4em;
    height: 8em;
    left: 30%;
    right: 4em;
    background-color: #F2FFFC;
    color: #000;
    padding: 1.5em;
}
.blog .mais-recente {
    background-color: #F2FFFC;
}
.blog .mais-recente a {
    color: #F26;
}
.etiqueta {
    display: block;
    width: 14em;
    box-sizing: border-box;
    line-height: 1;
    background-color: #3C1D3D;
    padding: 1em 0;
    border: .25em solid black;
    text-decoration: none;
    color: white;
    font-family: "Open Sans Condensed", sans-serif;
    font-size: 1.2em;
    position: absolute;
    top: 0;
    right: 0;
    transform-origin: 0 0;
    transform: translate(6.5765em, -2.4745em) rotate(45deg);
}

Opa Júlio, tudo bem?

.palavras-cabecalho {
    perspective: 6px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

Comenta essa perspective, ela distorce os valores do position (:

Cara, nada deu jeito.

Estou com o mesmo problema que voce