W3docs

Propriedade CSS text-shadow

Use a propriedade CSS text-shadow para definir a sombra do texto. Veja os valores e exemplos práticos.

A propriedade CSS text-shadow adiciona uma ou mais sombras ao texto de um elemento. É uma das propriedades CSS3 e é amplamente utilizada para criar profundidade sutil, efeitos de brilho e melhorar a legibilidade do texto posicionado sobre fundos complexos.

Esta página aborda a sintaxe, todos os valores, como empilhar múltiplas sombras, efeitos visuais comuns (sombra, brilho, texto em relevo), notas de acessibilidade e como text-shadow difere de box-shadow.

Como funciona

Uma única sombra é descrita por 2 a 3 valores de comprimento seguidos por uma <color> opcional:

  • x-offset (primeiro valor, obrigatório) — a distância horizontal. Um valor positivo move a sombra para a direita, um valor negativo para a esquerda.
  • y-offset (segundo valor, obrigatório) — a distância vertical. Um valor positivo move a sombra para baixo, um valor negativo para cima.
  • blur-radius (terceiro valor, opcional) — a suavidade da sombra. Valores maiores resultam em uma sombra mais suave e espalhada. Não pode ser negativo; o padrão é 0 (sombra nítida).
  • color (opcional) — a cor da sombra. Se omitida, os navegadores utilizam o valor de color do elemento. Você pode usar cores HTML com nomes, hex, rgb(), rgba(), hsl() ou hsla().
Informação

O x-offset e o y-offset são obrigatórios; o blur-radius e a color são opcionais. A cor e os dois offsets podem ser escritos em qualquer ordem, mas os valores de offset devem seguir a ordem x, y, blur.

Valor Inicialnone
Aplica-se aTodos os elementos. Também se aplica a ::first-letter e ::first-line.
HerdadoSim.
AnimávelSim.
VersãoCSS3
Sintaxe DOMobject.style.textShadow = "1px 3px 3px #8ebf42";

Sintaxe

Sintaxe da Propriedade CSS text-shadow

text-shadow: h-shadow v-shadow [blur-radius] [color] | none | initial | inherit;

Exemplo da propriedade text-shadow:

Exemplo da Propriedade CSS text-shadow

<!DOCTYPE html>
<html>
  <head>
    <title>Title of the document</title>
    <style>
      .shadow {
        text-shadow: 2px 2px #1c87c9;
      }
    </style>
  </head>
  <body>
    <h2>Text-shadow property example</h2>
    <p>Some paragraph for example.</p>
    <p class="shadow">Some paragraph with the text-shadow property.</p>
  </body>
</html>

Resultado

Propriedade CSS text-shadow

Exemplo da propriedade text-shadow com os valores "x-offset", "y-offset", "blur-radius" e "color":

Exemplo da Propriedade CSS text-shadow com x-offset, y-offset, blur-radius e color especificados

<!DOCTYPE html>
<html>
  <head>
    <style>
      p {
        text-shadow: 5px 3px 2px #8ebf42;
        font: 1em Roboto, Helvetica, sans-serif;
      }
    </style>
  </head>
  <body>
    <h2>Text-shadow property example</h2>
    <p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.</p>
  </body>
</html>

Empilhando múltiplas sombras

Você pode aplicar várias sombras ao mesmo texto separando-as com vírgulas. As sombras são pintadas da frente para trás: a primeira sombra da lista fica no topo, e cada sombra seguinte é desenhada atrás da anterior. Esta é a base para efeitos de brilho, contorno e 3D.

/* a soft glow built from two stacked shadows */
.glow {
  color: #fff;
  text-shadow:
    0 0 5px #8ebf42,
    0 0 15px #8ebf42;
}

/* a simple two-tone outline */
.outline {
  text-shadow:
    1px 1px 0 #1c87c9,
    -1px -1px 0 #1c87c9;
}

Efeitos comuns

EfeitoValor de exemploO que faz
Sombra sutiltext-shadow: 1px 1px 2px rgba(0,0,0,0.4);Eleva levemente o texto da página.
Brilho neontext-shadow: 0 0 8px #0ff, 0 0 16px #0ff;Duas sombras borradas empilhadas na mesma cor.
Em relevo (gravado)text-shadow: 0 1px 1px rgba(255,255,255,0.6);Uma sombra clara abaixo de texto escuro parece entalhada.
Legibilidade em fotostext-shadow: 0 1px 3px rgba(0,0,0,0.8);Um blur escuro atrás de texto claro mantém a legibilidade.
Aviso

Use text-shadow para legibilidade e decoração, não como substituto para contraste real. Sombras pesadas ou de baixo contraste podem dificultar a leitura para alguns usuários, portanto mantenha o contraste entre texto e fundo forte por si só.

text-shadow vs box-shadow

text-shadow desenha uma sombra em torno dos glifos (as formas das letras) do texto, enquanto box-shadow desenha uma sombra em torno da caixa retangular de um elemento. Use text-shadow quando quiser que a sombra siga o contorno dos caracteres, e box-shadow para cartões, botões e outros elementos de interface em caixa.

Valores

ValorDescrição
h-shadowO deslocamento horizontal (eixo x). Positivo desenha a sombra à direita, negativo à esquerda.
v-shadowO deslocamento vertical (eixo y). Positivo desenha a sombra abaixo do texto, negativo acima.
blur-radiusDefine o tamanho e o desfoque da sombra. Valores negativos não são permitidos. O padrão é 0.
colorA cor da sombra. Nomes de cores, códigos hex, rgb(), rgba(), hsl() e hsla() podem ser usados.
noneNenhuma sombra é aplicada. Este é o valor padrão da propriedade.
initialDefine a propriedade para seu valor padrão (none).
inheritHerda a propriedade do elemento pai.

Suporte dos navegadores e propriedades relacionadas

text-shadow é suportada em todos os navegadores modernos. A sombra não afeta o layout — ela é pintada fora da caixa e nunca altera o tamanho do elemento nem a posição do conteúdo ao redor.

Leitura relacionada: box-shadow, color, opacity, text-decoration, e os pseudoelementos ::first-letter e ::first-line aos quais text-shadow também se aplica.

Prática

Prática
Quais das seguintes afirmações são verdadeiras sobre a propriedade CSS text-shadow?
Quais das seguintes afirmações são verdadeiras sobre a propriedade CSS text-shadow?
Was this page helpful?