Menu

Text shadow CSS: składnia, poświata, obrys i przykłady

text-shadow rysuje jeden lub więcej cieni za tekstem. Poznaj cztery wartości (przesunięcie x, przesunięcie y, rozmycie, kolor), nakładanie cieni dla efektów poświaty, obrysu i 3D oraz użycie cienia, żeby tekst był czytelny na złożonym tle.

Na tej stronie są działające edytory: edytuj, uruchamiaj i od razu zobacz wynik.

Jak działa text-shadow

text-shadow maluje za tekstem jego kopię, przesuniętą i rozmytą. Podajesz przesunięcie poziome, przesunięcie pionowe, opcjonalne rozmycie i kolor.

3px 3px 0 #f59e0b oznacza 3px w prawo (fizycznie, w każdym kierunku pisma), 3px w dół, bez rozmycia, bursztynowy. Drugi cień ma rozmycie 6px i półprzezroczystą czerń, co jest typowym przepisem na subtelny efekt głębi.

Składnia

text-shadow: <offset-x> <offset-y> <blur-radius>? <color>?;
WartośćWymaganaZnaczenie
offset-xTakDodatnia przesuwa cień w prawo, ujemna w lewo
offset-yTakDodatnia przesuwa go w dół, ujemna w górę
blur-radiusNie (domyślnie 0)Jak miękka jest krawędź; wartości ujemne są nieprawidłowe
colorNie (domyślnie kolor tekstu)Może być na początku albo na końcu

text-shadow: none usuwa odziedziczony cień. Zmień wartości poniżej, żeby zobaczyć efekt każdej z nich:

Wypróbuj -4px -4px 0 #16a34a, 0 0 10px red i dwa cienie oddzielone przecinkiem.

Wiele cieni: poświata, obrys i 3D

Przecinki nakładają cienie; pierwszy jest rysowany na wierzchu. Z tej jednej reguły wynikają trzy efekty:

  • Poświata: zerowe przesunięcia, rosnące rozmycie, na ciemnym tle.
  • Obrys: cztery ostre cienie, po jednym na każdą przekątną. Sprawdza się przy cienkich obrysach; dla grubszego, równego obrysu -webkit-text-stroke: 2px #111827 (obsługiwane we wszystkich aktualnych przeglądarkach mimo prefiksu) rysuje zamiast tego linię na krawędziach liter.
  • 3D: seria ostrych cieni, każdy o 1px dalej, więc litery wyglądają na wytłoczone.

Czytelny tekst na złożonym tle

Biały tekst na zdjęciu lub wzorze traci krawędzie tam, gdzie tło jest jasne. Miękki ciemny cień przywraca je bez widocznego pudełka:

Cień pomaga, ale nie gwarantuje kontrastu. Przy dłuższym tekście na obrazku dodaj też za tekstem jednolitą lub gradientową nakładkę.

text-shadow kontra box-shadow

text-shadowbox-shadow
Podąża zaKształtami literPudełkiem elementu (i jego zaokrągleniem)
Wartość spreadNieTak
insetNieTak
Wiele cieni po przecinkuTakTak

Cienie na kartach i przyciskach opisuje strona o box-shadow.

Częste błędy

  • Ciężkie, ciemne cienie na tekście głównym. Rozmywają kształty liter. Zostaw cienie dla nagłówków i krótkich etykiet.
  • Zapominanie o drugim przesunięciu. text-shadow: 2px #000 jest nieprawidłowe; oba przesunięcia są wymagane.
  • Ujemne rozmycie. Jest nieprawidłowe i cała deklaracja przepada.
  • Oczekiwanie, że cień zajmie miejsce. Jest tylko malowany; duże cienie mogą zachodzić na następną linię albo zostać przycięte przez overflow: hidden.
  • Efekty poświaty na jasnym tle. Jasna poświata na białym tle jest niewidoczna. Poświata potrzebuje ciemnego tła.

Najczęściej zadawane pytania

Jaka jest składnia text-shadow?

text-shadow: offset-x offset-y blur-radius color;, na przykład text-shadow: 2px 2px 4px rgb(0 0 0 / 40%);. Oba przesunięcia są wymagane; rozmycie domyślnie wynosi 0, a kolor to kolor tekstu.

Jak dodać więcej niż jeden cień tekstu?

Oddziel cienie przecinkami: text-shadow: 0 0 4px #fff, 0 0 12px #2563eb;. Pierwszy cień jest rysowany nad kolejnymi.

Jak zrobić efekt poświaty na tekście?

Użyj cieni bez przesunięcia i z rozmyciem, często kilku z rosnącym rozmyciem: text-shadow: 0 0 4px #60a5fa, 0 0 12px #2563eb;. Na ciemnym tle wygląda to jak neonowa poświata.

Czy text-shadow ma wartość spread jak box-shadow?

Nie. text-shadow nie ma spread ani słowa kluczowego inset. Żeby pogrubić cień wokół liter, nałóż kilka cieni albo użyj -webkit-text-stroke dla obrysu.

Czy text-shadow wpływa na układ?

Nie. Cień jest tylko malowany; nie zajmuje miejsca i nie przesuwa otaczającej treści, więc duży cień może zachodzić na pobliskie elementy.

Ilustracja języków programowania w Coddy

Ucz się programowania z Coddy

ZACZNIJ