7
respostas

h1 do Blog está sem estilo

Eu não consegui usar o main h1, eu até fiz um esquema aqui que eu tirei a declaração

h1 {
    text-align: center;
    background-color: #851944;
    color: #FFF;
}

e apliquei no arquivo bio.css a seguinte declaração

main h1 {
    font-size: 60px;
    background-color: #851944; 
    color: #FAFFFA; 
    text-align: center;
    font-family: "Open Sans", sans-serif;
}

O que acontece é que funciona o main h1 porém ele tira a formatação do h1 do Blog, então eu queria saber se é necessário esse trecho


h1 {
    text-align: center;
    background-color: #851944;
    color: #FFF;
}
7 respostas

Se ele realmente sobrescreve tudo, como é no caso, então não tem porque existir propriedades definidas só para o h1.

Agora, se você tiver outro h1 no seu site que não estiver embaixo de um main, ele não terá esta formatação. Eu recomendo deixar o h1 com uma definição de estilo genérica e especificar o que você quer no main h1.

Tirando essa declaração do h1 e colocando main h1 ele perde a formatação no blog.html, como faço pra manter sem estilo o

João da Silva

dessa forma, até agora está assim: bio.html
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8"/>
        <title>Biografia - João da Silva</title>
        <link rel="icon" href="favicon.png"/>
        <link rel="stylesheet" href="site.css"/>
        <link rel="stylesheet" href="bio.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">
    </head>

    <body>
        <main>
            <h1>Sobre mim</h1>  <!--Título Principal-->

            <p>Moro em São Paulo mas atendo clientes do mundo todo. Sou conhecido por fazer produtos de <em>qualidade</em>, <em>durabilidade</em> e que <em>agregam valor</em> para meus clientes.</p>

            <p>Trabalho usando a web como plataforma, ou seja, respiro HTML5, CSS3 e JavaScript (ou melhor: ECMASCript). Crio sites para todos, seguindo as principais diretivas de acessibilidade, responsividade e web semântica, sem descuidar da qualidade de código.</p>

            <h2>Como trabalho</h2>

            <blockquote>
                <p>João é o melhor desenvolvedor front-end com quem já trabalhei. Muito eficiente e muito capaz.
                    Recomendo sem dúvidas!</p>
                <cite>José Souza, Fiat</cite>
            </blockquote>
            <p>Satisfazer meus clientes é prioridade. Para isso, garanto um processo de desenvolvimento altamente interativo, baseado em feedback contínuo. <strong>Não trabalho com escopo fechado</strong>: o cliente é que decide quando o produto está pronto.</p>

            <p>Também não trabalho com prazos fechados: <strong>qualidade é importante demais para ser sacrificada</strong>.</p>

            <h2>Experiência</h2>

            <blockquote>
                <p>João domina as tecnologias como ninguém. Eu apresentava um problema, ele tinha na ponta da língua a solução mais adequada com as tecnologias mais recentes.</p>
                <cite>Manoel Santos, Petrobrás</cite>
            </blockquote>

            <p>Já desenvolvi projetos para grandes empresas como <a href="http://www.bmw.com.br">BMW</a>, <a href="http://www.uol.com.br">UOL</a> e <a href="http://www.ibm.com.br">IBM</a>. Neles, o foco principal era entregar uma experiência imersiva e impactante para o usuário final sem descuidar do desempenho e da acessibilidade da página.</p>

            <p>Também já fui contratado para transformar grandes portais, como Terra e G1, em páginas responsivas. Fui responsável por renovar o layout, reorganizar o conteúdo e re-escrever o código de forma mais reaproveitável.</p>

            <h2>Comunidade</h2>

            <p>Procuro repassar meu conhecimento para a comunidade. Para isso, já dei diversas palestras e mantenho um <a href="blog.html">blog</a>.</p>
        </main>
        <img src="eu.jpg" alt="Foto de João da Silva"/>
        <aside>
            <h1>João da Silva</h1>
            <nav>
                <ul>
                    <li><a href="index.html">Home</a></li>
                    <li><a href="portfolio.html">Porfolio</a></li>
                    <li><a href="bio.html">Sobre Mim</a></li>
                    <li><a href="blog.html">Blog</a></li>
                    <li><a href="contato.html">Contato</a></li>
                </ul>
            </nav>
        </aside>
        <footer>
            &copy; João da Silva 2014
        </footer>
    </body>
</html>

blog.html

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8"/>
        <title>Biografia - João da Silva</title>
        <link rel="icon" href="favicon.png"/>
        <link rel="stylesheet" href="site.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">
    </head>
    <body>
        <main>
            <h1>Blog</h1>
            <article>
                <h2>O essencial de design responsivo</h2>
                <time datetime="2014-07-01">01 de julho de 2014</time>

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

                <a href="#">Leia Mais</a>
                <footer>Tags: <a href="#">design responsivo</a>, <a href="#">mobile</a>, <a href="#">css</a></footer>
            </article>

            <article>
                <h2>Por que fazer páginas acessíveis?</h2>
                <time datetime="2014-06-15">15 de junho de 2014</time>

                <p>Tem se falado cada vez sobre acessibilidade na web. Há diversas técnicas e diretivas a serem seguidas, inclusive da própria W3C. Mas vale a pena investir nisso?</p>

                <a href="#">Leia Mais</a>
                <footer>Tags: <a href="#">acessibilidade</a>, <a href="#">boas práticas</a></footer> 
            </article>

            <article>
                <h2>JavaScript não obstrusivo</h2>
                <time datetime="2014-05-28">28 de maio de 2014</time>

                <p>JavaScript é uma linguagem essencial hoje em dia para criar páginas ricas, interativas e dinâmicas. Porém, há alguns cuidados que devem ser tomados ao colocarmos código JavaScript em nossas páginas.</p>

                <a href="#">Leia Mais</a>
                <footer>Tags: <a href="#">javascript</a>, <a href="#">boas práticas</a></footer>
            </article>
        </main>
    </body>
</html>

bio.css

main h1 {
    font-size: 60px;
    background-color: #851944; 
    color: #FAFFFA; 
    text-align: center;
    font-family: "Open Sans", sans-serif;
}

h2 {
    font-size: 40px;
    font-family: "Open Sans", sans-serif;
}

site.css

body {
    font-family:"Crimson Text", "Times New Roman", serif;
    background-color: #F2FFFC;
    font-size: 120%;
    line-height: 1.5;
}

h1,h2 {
    font-family:"Open Sans Condensed","Arial", sans-serif;
}

h1 {
    text-align: center;
    background-color: #851944;
    color: #FFF;
}

p {
    text-align: justify;
}

Com isso, o estilo main h1 não pega, e se eu tiro aquele trecho de código ele funciona porém ele tira a formatação do h1 do Blog, se puderem me ajudar, agradeço!

Vinícius, eu testei aqui. Vamos lá:

Na página bio.html:

O main h1 funcionou no trecho "Sobre mim"

O main não fuincionou no trecho "João da Silva" Explicação: Este h1 não está dentro de um "main"

Na página blog.html:

O main não fuincionou no trecho "Blog" Não irá funcionar porque você não está importando o arquivo bio.css nesta página.

Era isso que queria saber?

Eu importei o arquivo assim na página blog.html

 <link rel="stylesheet" href="site.css"/>
        <link rel="stylesheet" href="bio.css"/>

e retirei aquele trecho

h1 {
    text-align: center;
    background-color: #851944;
    color: #FFF;
}

com estas alterações deu certo, Obrigado!, Só queria perguntar essa declaração do main h1 eu faço no bio.css ou no site.css ?

Semanticamente, creio que fica melhor no site.css!

Então pra que serve o arquivo bio.css ? como vou saber quando colocar estilos pra ele ? É que eu vi importando um arquivo só, tipo nos exercícios da alura, na opinão do instrutor, lá aparece só o arquivo site.css importado

O bio.css serve para você especificar as marcações que tem na página bio.html. Acho até que seria mais semântico ele ser importado apenas em bio.html. Se tem alguma definição que deve ser aplicada em mais páginas, então tal marcação deveria ficar em site.css.

Entenda que você poderia deixar tudo em um arquivo também. Do ponto de vista do resultado, nada mudará.