CSS — drop-shadow() — drop-shadow() CSS — функция применяет эффект тени к входному изображению. Его ре
drop-shadow()
CSS — функция применяет эффект тени к входному изображению. Его результат — <filter-function>
.
Каплевидная тень-это,по сути,размытая,смещенная версия альфа-маскировки входного изображения,нарисованная определенным цветом и составленная под изображением.
Примечание. Эта функция в некоторой степени похожа на свойство box-shadow
. Свойство box-shadow
создает прямоугольную тень за всем блоком элемента , а функция фильтра drop-shadow()
создает тень, которая соответствует форме (альфа-канал) самого изображения .
Syntax
drop-shadow(offset-x offset-y blur-radius color)
Функция drop-shadow()
принимает параметр типа <shadow>
(определенный в свойстве box-shadow
), за исключением того, что ключевое слово inset
и параметры spread
не допускаются.
Parameters
-
offset-x
offset-y
(required) Два значения
<length>
, которые определяют смещение тени.offset-x
указывает горизонтальное расстояние, где отрицательные значения располагают тень слева от элемента.offset-y
указывает вертикальное расстояние, где отрицательные значения размещают тень над элементом. Если оба значения равны0
, тень помещается непосредственно за элементом.-
blur-radius
(optional) Радиус размытия тени, указанный как
<length>
. Чем больше значение, тем больше и размытее тень. Если значение не указано, по умолчанию используется значение
, что приводит к резкому не размытому краю. Отрицательные значения не допускаются.-
color
(optional) Цвет тени, указанный как
<color>
. Если не указано, используется значение свойстваcolor
.
Examples
Установка падающей тени с помощью смещения пикселей и радиуса размытия
/ * Черная тень с размытием 10 пикселей * / drop-shadow(16px 16px 10px black)
Настройка падающей тени с помощью смещения rem и радиуса размытия
/ * Красноватая тень с размытием 1rem * / drop-shadow(.5rem .5rem 1rem #e23)
Specifications
Specification |
---|
Модуль эффектов фильтра, уровень 2 (эффекты фильтра 2) # funcdef-filter-drop-shadow |
Совместимость с браузерами
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Хромовый Android | Firefox для Android | Опера Андроид | Safari на IOS | Samsung Интернет | |
drop-shadow() | 18 | 12 | 35 | No | 15 | 6 | 4. 4 | 53 | 35 | 14 | 6 | 6.0 |
См.также
<filter-function>
- CSS
box-shadow
свойство blur()
brightness()
contrast()
grayscale()
hue-rotate()
invert()
opacity()
saturate()
sepia()
© 2005–2021 Участники MDN.
Лицензия Creative Commons Attribution-ShareAlike License v2.5 или более поздняя.
https://developer.mozilla.org/en-US/docs/Web/CSS/filter-function/drop-shadow()
Функция drop-shadow() в CSS
Используйте функцию drop-shadow()
, чтобы применить эффект тени к изображению.
Функция CSS drop-shadow()
используется со свойством filter
для добавления эффекта тени к изображению.
Падающая тень — это (обычно) размытая, смещенная версия альфа-маски входного изображения, нарисованная определенным цветом и наложенная под изображением.
Функция CSS drop-shadow()
принимает несколько аргументов, определяющих смещение тени, ее размытие и цвет.
Базовый пример
Вот пример простой тени:
Другие эффекты
Ваши тени не всегда должны иметь смещение. Например, вы можете использовать функцию drop-shadow()
для создания свечения вокруг изображения.
Для этого просто установите аргументы смещения равными 0
. Вот так:
Большинство теней обычно имеют размытые края, но ничто не мешает вам иметь острые края. Для этого просто установите аргумент размытия равным 9.0003 0 :
Официальный синтаксис
Официальный синтаксис функции drop-shadow()
выглядит следующим образом:
drop-shadow() = drop-shadow(
Возможные значения
Функция drop-shadow()
принимает значений длины и необязательное значение цвета в качестве аргументов.
Аргументы определяют горизонтальное и вертикальное смещение тени, степень размытия и ее цвет.
&&
указывает, что порядок значений
и
может быть изменен (т. е. у вас есть возможность указать цвет первым или последним).
Вот объяснение каждого значения:
- <цвет>? (опционально)
- Это значение определяет цвет тени. Это может быть любое допустимое значение
steelblue
,#FF4500
илиrgba(0,0,0,0.3)
— все допустимые цвета. Если это значение не указано, оно будет взято из свойстваcolor
. - <длина>{2,3}
Это может быть два или три значения, как указано ниже:
- <смещение по горизонтали> (обязательно)
- Определяет горизонтальное смещение тени. Это значение длины. Например,
10px
или1em
. Допускаются отрицательные значения. Если указано отрицательное значение, смещение приведет к тому, что тень будет отрисована слева от поля. Если это положительное значение, оно будет сдвинуто вправо. - <смещение по вертикали> (обязательно)
- Определяет вертикальное смещение тени. Это значение длины. Например,
10px
или1em
. Допускаются отрицательные значения. Если указано отрицательное значение, смещение приведет к тому, что тень будет нарисована над блоком. Если это положительное значение, оно будет нарисовано ниже. - <размытие> (опционально)
- Определяет эффект размытия по Гауссу (если есть). Если значение равно нулю (т.е.
0
), край тени будет резким. Чем выше значение, тем более размытой станет тень. Отрицательные значения не допускаются для размытия по Гауссу.
Технические характеристики CSS
- Функция
drop-shadow()
определена в модуле эффектов фильтра уровня 1 (рабочий проект W3C)
Поддержка браузера
В следующей таблице, предоставленной Caniuse.
6.7. Тень
6.7. Тень
6.7.1. Обзор
Рисунок 17.123. Пример для фильтра «Тень»
Исходное изображение
Использование GEGL «Тень»
С помощью этого фильтра GEGL вы можете добавить тень к изображению, выделению или текст. Вы можете выбрать цвет, положение и размер тени.
6.7.2. Активировать фильтр
Вы можете найти этот фильтр в меню меню изображения через Фильтры → Свет и тень → Тень….
Обычно этот фильтр отключен. Вы должны добавить альфа-канал к вашему изображение, чтобы использовать его.
6.7.3. Опции
Рисунок 17.124. Параметры фильтра «Тень»
- Предустановки, предварительный просмотр, разделенный вид
Примечание Эти параметры описаны в Разделе 2, «Общие функции».
- ИКС, Д
Слой, содержащий тень, будет перемещен по горизонтали. на X пикселей, по вертикали на Y пикселей. Итак, X и Y смещение определить, где будет располагаться тень по отношению к изображение. Высокие значения делают воображаемый источник света похожим на это далеко в горизонтальном или вертикальном направлении и низко значения заставят его выглядеть ближе к изображению.
Смещения могут быть отрицательными, что приводит к появлению тени слева от выделение, если смещение X < 0, или над выделением, если смещение Y < 0.
Из чистого любопытства вы можете увидеть слой с тенью. ясно, установив радиус размытия на 0 и переместив тень с Х и Y.
- Радиус размытия
После создания тени Размытие по Гауссу с указанный радиус применяется к теневому слою, в результате чего реалистичный вид тени.
- Цвет
-
Тень может иметь любой цвет. Просто нажмите на образец цвета, и выберите цвет, когда появится селектор цвета, или используйте пипетка.
- Непрозрачность
Непрозрачность тени. По умолчанию он равен 0,500, но вы можете выбрать любое другое значение от 0 (полная прозрачность) до 2,00 (полная непрозрачность) здесь.
- Отсечение
Результат этого фильтра может быть больше, чем исходное изображение. С параметром «Настроить» по умолчанию слой будет автоматически изменен размер по мере необходимости, когда фильтр применяемый. С опцией Clip результат будет обрезан до границы слоя.
6.7.4. Использование фильтра «Тень»
Этот фильтр GEGL Drop Shadow удивителен: если вы примените фильтр прямо к изображению, как вы делаете с устаревшим фильтром, вы ничего не получаете!
Чтобы получить тот же результат, что и в устаревшем фильтр :
Откройте исходное изображение.
Откройте новое изображение, немного больше исходного изображения, заполненное с прозрачностью .
Скопируйте исходное изображение и вставьте его в новое изображение. Плавающий выделение создается в диалоговом окне слоя.
Закрепите плавающее выделение.
Меню/Слой/Обрезать по содержимому.
Меню/Слой/Размер границы слоя: установите размер слоя таким же, как ваше изображение и наполнено прозрачностью; нажать на Центральная кнопка. Затем нажмите на Кнопка изменения размера.
Откройте диалоговое окно «Тень»: тень отобразится в предварительный просмотр на холсте. Вы можете изменить значения параметров по умолчанию.
В конце концов, добавьте новый слой того же размера, что и изображение, и заполненный цветом, который вы хотите придать фону. Переместить это слой в самый низ стека слоев.
Нажмите OK, чтобы применить фильтр.
Применение фильтра к выделенному :
Откройте исходное изображение.
Откройте новое изображение того же размера, что и исходное изображение, заполненное с прозрачностью .
Создать выделение
Скопируйте выделение и вставьте его в новое изображение. Плавающий выделение создается в диалоговом окне слоя.
Закрепите плавающее выделение.
Меню/Слой/Обрезать по содержимому.
Меню/Слой/Слой в размер изображения (с прозрачностью).
Откройте диалоговое окно «Тень»: тень отобразится в предварительный просмотр на холсте. Вы можете изменить значения параметров по умолчанию.
В конце концов, добавьте новый слой того же размера, что и изображение, и заполненный цветом, который вы хотите придать фону. Переместить это слой в самый низ стека слоев.
Вы также можете использовать исходное изображение в качестве фона: отмените выделение, скопируйте изображение и вставьте его как новый слой в новое изображение. Переместите новый слой в самый низ стопки слоев.