W3docs

Свойство CSS text-shadow

Используйте свойство CSS text-shadow для задания тени текста. Изучите значения свойства и попробуйте примеры.

Свойство CSS text-shadow добавляет одну или несколько теней к тексту элемента. Оно входит в число свойств CSS3 и широко используется для создания тонкой глубины, эффектов свечения и улучшения читаемости текста на насыщенных фонах.

На этой странице описаны синтаксис, все значения, способы наложения нескольких теней, распространённые визуальные эффекты (падающая тень, свечение, рельефный текст), замечания по доступности, а также отличия text-shadow от box-shadow.

Принцип работы

Одна тень задаётся 2 или 3 значениями длины, за которыми следует необязательный <color>:

  • x-offset (первое значение, обязательное) — горизонтальное смещение. Положительное значение сдвигает тень вправо, отрицательное — влево.
  • y-offset (второе значение, обязательное) — вертикальное смещение. Положительное значение сдвигает тень вниз, отрицательное — вверх.
  • blur-radius (третье значение, необязательное) — мягкость тени. Чем больше значение, тем мягче и шире тень. Не может быть отрицательным; по умолчанию равно 0 (чёткая тень).
  • color (необязательное) — цвет тени. Если не указан, браузеры используют значение свойства color элемента. Можно применять цвета HTML: названия, hex, rgb(), rgba(), hsl() или hsla().
Информация

x-offset и y-offset обязательны; blur-radius и color — необязательны. Цвет и два смещения можно записывать в любом порядке, однако значения смещений должны следовать в порядке x, y, blur.

Начальное значениеnone
Применяется кВсем элементам. Также применяется к ::first-letter и ::first-line.
НаследуетсяДа.
АнимируетсяДа.
ВерсияCSS3
Синтаксис DOMobject.style.textShadow = "1px 3px 3px #8ebf42";

Синтаксис

Синтаксис свойства CSS text-shadow

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

Пример свойства text-shadow:

Пример свойства 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>

Результат

Свойство CSS text-shadow

Пример свойства text-shadow со значениями "x-offset", "y-offset", "blur-radius" и "color":

Пример свойства CSS text-shadow с указанными x-offset, y-offset, blur-radius и color

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

Наложение нескольких теней

Несколько теней для одного текста задаются через запятую. Тени отрисовываются спереди назад: первая тень в списке находится сверху, каждая последующая — позади предыдущей. На этом принципе основаны эффекты свечения, контура и трёхмерности.

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

Распространённые эффекты

ЭффектПример значенияЧто делает
Тонкая падающая теньtext-shadow: 1px 1px 2px rgba(0,0,0,0.4);Слегка приподнимает текст над страницей.
Неоновое свечениеtext-shadow: 0 0 8px #0ff, 0 0 16px #0ff;Две наложенные размытые тени одного цвета.
Рельефный (гравированный)text-shadow: 0 1px 1px rgba(255,255,255,0.6);Светлая тень под тёмным текстом создаёт эффект гравировки.
Читаемость на фотоtext-shadow: 0 1px 3px rgba(0,0,0,0.8);Тёмное размытие за светлым текстом сохраняет его разборчивость.
Внимание

Используйте text-shadow для улучшения читаемости и оформления, а не как замену реального контраста. Тяжёлые или малоконтрастные тени могут затруднять чтение для некоторых пользователей, поэтому сам по себе контраст текста и фона должен быть достаточным.

text-shadow vs box-shadow

text-shadow рисует тень вокруг глифов (форм букв) текста, тогда как box-shadow рисует тень вокруг прямоугольного блока элемента. Используйте text-shadow, когда тень должна повторять контур символов, и box-shadow — для карточек, кнопок и других блочных элементов интерфейса.

Значения

ЗначениеОписание
h-shadowГоризонтальное смещение (ось x). Положительное значение рисует тень справа, отрицательное — слева.
v-shadowВертикальное смещение (ось y). Положительное значение рисует тень под текстом, отрицательное — над ним.
blur-radiusОпределяет размер и размытость тени. Отрицательные значения не допускаются. По умолчанию равно 0.
colorЦвет тени. Можно использовать названия цветов, hex-коды, rgb(), rgba(), hsl() и hsla().
noneТень не применяется. Это значение по умолчанию для данного свойства.
initialУстанавливает свойство в значение по умолчанию (none).
inheritНаследует свойство от родительского элемента.

Поддержка браузерами и связанные свойства

text-shadow поддерживается во всех современных браузерах. Тень не влияет на макет — она отрисовывается за пределами блока и никогда не изменяет размер элемента или положение окружающего содержимого.

Дополнительная информация: box-shadow, color, opacity, text-decoration, а также псевдоэлементы ::first-letter и ::first-line, к которым text-shadow тоже применяется.

Практика

Практика
Какие из следующих утверждений верны относительно свойства CSS text-shadow?
Какие из следующих утверждений верны относительно свойства CSS text-shadow?
Was this page helpful?