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

Dúvida Barra de Rolagem Horizontal

Olá a todos, verifiquei que outros tópicos também tiveram este problema , porém eu ainda fiquei com algumas dúvidas. Gostaria de saber o seguinte: hoje está aparecendo a barra de rolagem horizontal quando coloco o link do twitter no local desejado, porém gostaria de saber o porque ela aparece? Realmente deveria aparecer e eu sou obrigado a utilizar a propriedade overflow: hidden ; na tag header? Obrigado pela atenção.

Segue o HTML e o CSS:

<!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>
        <p class="subtitulo-principal">Desenvolvedor web</p>
        <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>

        <a class="twitter-link">Siga-me no Twitter</a>
    </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>

CSS


.foto-home {
    height: 200px;
}
.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: rotate(-5deg) skew(-10deg);
}
.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;
}
.palavra-home {
    font-family: "Shadows Into Light", cursive;
    font-weight: bold;
    color: #D5447E;
    position: absolute;
}
.eficiencia {
    top: 20%;
    left: 75%;
    transform: rotate(-10deg);
}
.boas-praticas {
    top: 70%;
    left: 20%;
    transform: rotate(10deg);
}
.codigo-limpo {
    top: 45%;
    left: 10%;
    transform: rotate(15deg);
}
.css3 {
    top: 50%;
    left: 30%;
    transform: rotate(-10deg);
}
.html5 {
    top: 40%;
    left: 80%;
    transform: rotate(13deg);
}
.javascript {
    top: 10%;
    left: 60%;
    transform: rotate(-8deg);
}
.acessibilidade {
    top: 30%;
    left: 25%;
    transform: rotate(8deg);
}
.responsivo {
    top: 15%;
    left: 15%;
    transform: rotate(6deg);
}
.otimizacoes {
    top: 60%;
    left: 70%;
    transform: rotate(-7deg);
}
.agilidade {
    top: 10%;
    left: 30%;
    transform: rotate(12deg);
}
.design {
    top: 35%;
    left: 65%;
    transform: rotate(-13deg);
}
.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;
}

.twitter-link{
    width: 14em;
    line-height: 1;
    padding: 1em 0;
    box-sizing: border-box;

    text-align: center;
    text-decoration: none;
    background-color: #3C1D3D;
    color: white;
    border: .25em solid black;

    font-size: 1.2em;
    font-family: "Open Sans Condensed", sans-serif;

    position: absolute;
    top: 0;
    right: 0;
    transform-origin: 0 0;
    transform: translate(6.5754em, -2.4749em) rotate(45deg);    
}
4 respostas

É isso mesmo , Bruno.

Você irá precisar colocar o overflow:hidden uma vez que o elemento ultrapassa a largura do browser, causando um scroll horizontal que não é nada agradável para o usuário.

solução!

Olá Bruno,

O scroll ocorre porque ao rotacionar e transladar o link (classe twitter-link) parte dele fica fora da área da tela. Você pode verificar movendo o scroll para a direita. Assim, o objetivo do overflow-x : hidden é esconder essa parte indesejada. Você pode definir no body e html, da forma:

html, body {
    overflow-x: hidden;
}

Esse procedimento é explicado no item 10 da aula 4. Blz?

[ ]´s

Marco Bruno , Obrigado pelo retorno, beleza eu fiquei na dúvida porque na resolução do exercício não foi informado que isso poderia acontecer, então pensei que eu havia feito alguma coisa errado, ou não coloquei alguma propriedade. Obrigado pela resposta.

Márcia Valdenice Pereira do Nascimento obrigado pela sua explicação. Realmente eu fiquei na dúvida se poderia usar porque até o momento eu ainda não tinha visto essa propriedade no curso, Obrigado.

Obrigado pelo feedback Bruno. Amanhã sem falta eu darei uma olhada no exercício e ver se posso melhorar ele