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

text-shadow declarado em uma classe vai pra outra

Olá, tudo bem?

Ocorreu uma situação bastante curiosa aqui. Declarei o text-shadow na classe .titulo-principal das minhas páginas e a propriedade funcionou normalmente. Porém, o efeito de sombra também foi adicionado a uma outra classe do meu código, a .subtitulo-principal, localizada em index.html. Olhei aqui e ali no meu css e não vi nenhuma outra declaração de text-shadow para a classe subtítulo principal. Alguém saberia explicar o que aconteceu? Segue os códigos.

index.html:

<!DOCTYPE html>
<html lang="pt">
<head>
    <meta charset="UTF-8">
    <title>João da Silva - Desenvolvedor Web</title>
    <link rel="shortcut icon" href="img/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="img/eu.jpg" alt="Foto de João da Silva">
        <h1>João da Silva</h1>
        <p class="subtitulo-principal">Desenvolvedor web</p>
        <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>
        <a class="banner-twitter" href="http://twitter.com/joaodasilva">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 <span class="maravilhosos">maravilhosos</span></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="img/bmw.png" alt="Site da BMW"></li>
                <li><img src="img/ibm.png" alt="Site da IBM"></li>
                <li><img src="img/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>

index.css (onde está a declaração para classe .subtitulo.html):

.foto-home {
    height: 200px;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
}
.titulo-principal {
    position: relative;
}
.subtitulo-principal {
    text-align: center;
    font-size: 16px;
}

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

}

.eficiencia {

    top: 25%;
    right: 35%;
    transform: translate(-50%, -50%) rotate(30deg) translateZ(2px) scale(0.25);
}
.boas-praticas {

    top: 35%;
    left: 12%;
    transform: translate(-50%, -50%) rotate(120deg) translateZ(5px) scale(0.25);
}
.codigo-limpo {

    bottom: 15%;
    left: 25%;
    transform: translate(-50%, -50%) rotate(15deg) translateZ(2px) scale(0.25);
}
.css3 {

    bottom: 26%;
    right: 13.5%;
    transform: translate(-50%, -50%) rotate(240deg) translateZ(1px) scale(0.25);
}
.html5 {

    top: 35%;
    right: 16%;
    transform: translate(-50%, -50%) rotate(300deg) translateZ(3px) scale(0.25);
}
.javascript {

    top: 75%;
    left: 20%;
    transform: translate(-50%, -50%) rotate(75deg) translateZ(2px) scale(0.25);
}
.acessibilidade {

    bottom: 18%;
    left: 30%;
    transform: translate(-50%, -50%) rotate(200deg) translateZ(4px) scale(0.25);
}
.responsivo {

    top: 18%;
    right: 35%;
    transform: translate(-50%, -50%) rotate(150deg) translateZ(6px) scale(0.25);
}
.otimizacoes {

    bottom: 20%;
    right: 25%;
    transform: translate(-50%, -50%) rotate(115deg) translateZ(5px) scale(0.25);
}
.agilidade {

    bottom: 10%;
    left: 25%;
    transform: translate(-50%, -50%) rotate(280deg) translateZ(2px) scale(0.25);

}
.design {

    top: 25%;
    left: 30%;
    transform: translate(-50%, -50%) rotate(235deg) translateZ(5px) scale(0.25);
}
.saudacao p {
    color: #99A;
    line-height: 1;
    font-size: 1.5em;
    padding: 2em;
}
.saudacao-inicio {
    color: #889;
    font-size: 3em;
}
.saudacao-ultima-linha {
    text-align: right;
    display: block;
}
.saudacao strong {
    color: #000;
    font-size: 2em;
}
.saudacao em {
    color: #851944;
    font-size: 4em;
}
.maravilhosos {
    transform: skew(-10deg) rotate(-15deg);
    display: inline-block;
}
.botao-index {
    font-size: 1.25em;
    background-color: #851944;
    color: #FFF;
    border: .2em solid black;
    width: 40ch;
    text-align: center;
    padding: .5em;
    margin: 2em auto;
    display: block;
}
.secao-inicio {
    padding: 2em;
}

.secao-inicio h2 {
    text-transform: uppercase;
    font-size: 3em;
    text-shadow: 2px 2px #000;
    margin-bottom: .5em;
}
.trabalhos {
    background-color: #3C1D3D;
    border-top: 10px solid #000;
    border-bottom: 10px solid #000;
}
.trabalhos h2 {
    color: #FFF;
    border-top: 5em;
    border-bottom: 5em;
}
.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;
    position: relative;
}
.blog li a {
    color: #FCF;
}
.blog small {
    position: relative;
    top: -2em
}
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;
}
.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;
}
.blog li {
    width: 30%;
}

.banner-twitter {
    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: 16px;
    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);
}

html, body {
    height: 100%;
    overflow-x: hidden;
}
.palavras-chave {
    perspective: 6px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

por fim, site.css (onde está a declaração da classe titulo-principal):

p {

    text-align: justify;
    margin: 1rem 0;
}

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

main {
    width: 85%;
    float: left;
    padding-bottom: 80px;
}

.titulo-principal {
    color: #FFF;
    background-color: #851944;
    text-align: center;
    padding: 2rem;
    border-bottom: 0.5rem solid black;
    font-size: 300%;
    text-transform: uppercase;
    text-shadow: 2px 2px #000;
}

main h2 {
    font-size: 150%;
    clear: both;
}

main a {
    color: #851944;
}

.texto {
    width: 720px;
    margin-left: auto;
    margin-right: auto;
    padding: 1.5rem 0;
}

/*fonte dos títulos*/
h1, h2 {
    font-family: "Open Sans Condensed", "Arial", sans-serif;
}



.navegacao {
    background-color: #3C1D3D;
    color: #F2FFFC;
    font-family: "Open Sans Condensed", "Arial", sans-serif;
    text-align: center;
    text-transform: lowercase;
    width: 15%;
    position: relative;
    top: 310px;
}
/*título da barra de navegação*/
.navegacao h1 {
    margin-bottom: 1.25rem;
    font-size: 150%;
    text-transform: none;
}

.icones-sociais li {
    display: inline-block;
}

.icones-sociais a {
    text-indent: -9999px;
    width: 40px;
    height: 40px;
    display: block;
}

.github {
    background-image: url(../img/github.png);
}

.twitter {
    background-image: url(../img/twitter.png);
}

.linkedin {
    background-image: url(../img/linkedin.png);
}

.rodape-pagina {
    background-color: #000;
    color: #F2FFFC;
    clear: both;
    position: fixed;
    width: 100%;
    bottom: 0px;
    padding: 0.5rem;
}

nav a {
    color: inherit;
}

.navegacao, {
    padding: 1rem;
}

.navegacao, .minha-foto {
    float: right;
    border-bottom: 0.5rem solid black;
    border-left: 0.5rem solid black;
    box-sizing: border-box;
}

strong {
    font-weight: bold;
}

em {
    font-style: italic;
}



.minha-foto {
    position: absolute;
    top:0;
    right: 0;
}

Oss: o navegador que utilizo é o firefox para ubuntu, versão mais atualizada. Grato pela ajuda!

2 respostas
solução!

Oi Natan, tudo certinho?

O text-shadow é uma propriedade CSS que funciona em cascata da mesma forma que a color ou font-size.

Entao voce aplicou ela no elemento pai, os filhos (e netos, bisnetos, etc) tambem herdaram o mesmo text-shadow.

Tambem nao sabia disso, mas testei aqui e é isso basicamente. Se voce quisesse em um cara mais especifico poderia mudar os seletores do seu CSS.

Espero ter ajudado,

Abcs!

Muitíssimo obrigado pela resposta, chará!

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