W3docs

Proprietà CSS text-shadow

Usa la proprietà CSS text-shadow per aggiungere ombre al testo. Scopri i valori della proprietà e prova gli esempi.

La proprietà CSS text-shadow aggiunge una o più ombre al testo di un elemento. È una delle proprietà CSS3 ed è ampiamente utilizzata per effetti di profondità sottile, bagliori luminosi e per migliorare la leggibilità del testo su sfondi molto elaborati.

Questa pagina illustra la sintassi, tutti i valori, come sovrapporre più ombre, gli effetti visivi più comuni (ombra, bagliore, testo in rilievo), note sull'accessibilità e le differenze tra text-shadow e box-shadow.

Come funziona

Una singola ombra è descritta da 2 o 3 valori di lunghezza seguiti da un <color> opzionale:

  • x-offset (primo valore, obbligatorio) — la distanza orizzontale. Un valore positivo sposta l'ombra verso destra, un valore negativo verso sinistra.
  • y-offset (secondo valore, obbligatorio) — la distanza verticale. Un valore positivo sposta l'ombra verso il basso, un valore negativo verso l'alto.
  • blur-radius (terzo valore, opzionale) — quanto è morbida l'ombra. Valori più grandi producono un'ombra più morbida e diffusa. Non può essere negativo; il valore predefinito è 0 (ombra netta).
  • color (opzionale) — il colore dell'ombra. Se omesso, i browser usano il valore color dell'elemento. Puoi scegliere tra i colori HTML e usare nomi, valori esadecimali, rgb(), rgba(), hsl() o hsla().
Informazione

L'x-offset e lo y-offset sono obbligatori; il blur-radius e il colore sono opzionali. Il colore e i due offset possono essere scritti in qualsiasi ordine, ma i valori degli offset devono mantenere l'ordine x, y, blur.

Valore inizialenone
Si applica aTutti gli elementi. Si applica anche a ::first-letter e ::first-line.
EreditatoSì.
AnimabileSì.
VersioneCSS3
Sintassi DOMobject.style.textShadow = "1px 3px 3px #8ebf42";

Sintassi

Sintassi della proprietà CSS text-shadow

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

Esempio della proprietà text-shadow:

Esempio della proprietà 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>

Risultato

Proprietà CSS text-shadow

Esempio della proprietà text-shadow con i valori "x-offset", "y-offset", "blur-radius" e "color":

Esempio della proprietà CSS text-shadow con x-offset, y-offset, blur-radius e color specificati

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

Sovrapporre più ombre

Puoi applicare più ombre allo stesso testo separandole con delle virgole. Le ombre vengono disegnate dall'avanti verso il retro: la prima ombra nell'elenco si trova in cima, e ogni ombra successiva viene disegnata dietro la precedente. Questa è la base per effetti di bagliore, contorno e tridimensionalità.

/* 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;
}

Effetti comuni

EffettoValore di esempioCosa fa
Ombra sottiletext-shadow: 1px 1px 2px rgba(0,0,0,0.4);Solleva leggermente il testo dalla pagina.
Bagliore neontext-shadow: 0 0 8px #0ff, 0 0 16px #0ff;Due ombre sfocate sovrapposte dello stesso colore.
Rilievo (inciso)text-shadow: 0 1px 1px rgba(255,255,255,0.6);Un'ombra chiara sotto testo scuro crea un effetto inciso.
Leggibilità su fototext-shadow: 0 1px 3px rgba(0,0,0,0.8);Una sfocatura scura dietro il testo chiaro lo rende leggibile.
Attenzione

Usa text-shadow per la leggibilità e la decorazione, non come sostituto di un contrasto reale. Ombre pesanti o a basso contrasto possono rendere il testo più difficile da leggere per alcuni utenti, quindi mantieni sempre un contrasto testo/sfondo solido di per sé.

text-shadow vs box-shadow

text-shadow disegna un'ombra attorno ai glifi (le forme delle lettere) del testo, mentre box-shadow disegna un'ombra attorno alla scatola rettangolare di un elemento. Usa text-shadow quando vuoi che l'ombra segua il contorno dei caratteri, e box-shadow per card, pulsanti e altri elementi UI con forma rettangolare.

Valori

ValoreDescrizione
h-shadowL'offset orizzontale (asse x). Un valore positivo disegna l'ombra a destra, uno negativo a sinistra.
v-shadowL'offset verticale (asse y). Un valore positivo disegna l'ombra sotto il testo, uno negativo sopra.
blur-radiusDefinisce quanto è grande e sfocata l'ombra. I valori negativi non sono consentiti. Il valore predefinito è 0.
colorIl colore dell'ombra. Si possono usare nomi di colore, codici esadecimali, rgb(), rgba(), hsl() e hsla().
noneNessuna ombra applicata. Questo è il valore predefinito della proprietà.
initialImposta la proprietà al suo valore predefinito (none).
inheritEredita la proprietà dall'elemento genitore.

Supporto dei browser e proprietà correlate

text-shadow è supportato in tutti i browser moderni. L'ombra non influisce sul layout — viene disegnata all'esterno del box e non modifica mai le dimensioni dell'elemento né la posizione del contenuto circostante.

Letture correlate: box-shadow, color, opacity, text-decoration e gli pseudo-elementi ::first-letter e ::first-line a cui si applica anche text-shadow.

Esercitazione

Pratica
Quali delle seguenti affermazioni sulla proprietà CSS text-shadow sono vere?
Quali delle seguenti affermazioni sulla proprietà CSS text-shadow sono vere?
Was this page helpful?