contrast()
Базовая поддержка Широко доступна
Эта функция хорошо устоялась и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с сентября 2016 года.
Функция contrast() CSS функция настраивает контраст входного изображения. Результатом является <filter-function>.
Попробуйте
Синтаксис
contrast(amount)
Значения
amount-
Контраст результата, заданный как
<number>или<percentage>. Значение ниже100%уменьшает контраст, а значение выше100%увеличивает его. Значение0или0%создаст изображение полностью серого цвета, в то время как значение1или100%оставит входной образ без изменений. Отрицательные значения недопустимы. Начальное значение для интерполяции составляет1.
Ниже приведены пары эквивалентных значений:
contrast(0) /* Completely gray */ contrast(0%) contrast(0.65) /* 65% contrast */ contrast(65%) contrast(1) /* No effect */ contrast(100%) contrast(2) /* Double contrast */ contrast(200%)
Формальный синтаксис
Примеры
С свойством backdrop-filter
В этом примере используется фильтр contrast() через свойство CSS backdrop-filter для абзаца и моноширинного текста, изменяя цвет области за <p> и <code>.
.container {
background: url(image.jpg) no-repeat center / contain #339;
}
p {
backdrop-filter: contrast(0.5);
}
code {
backdrop-filter: contrast(0.15);
}
С свойством filter
В этом примере применяется фильтр contrast() через свойство CSS filter, изменяя контраст, смещая цвета всего элемента, включая содержимое, рамку, фон и тени.
p:first-of-type {
filter: contrast(30%);
}
p:last-of-type {
filter: contrast(300%);
}
С url() и фильтром SVG contrast
Элемент SVG <filter> используется для определения пользовательских эффектов фильтра, которые затем могут быть использованы по id. Примитив <feComponentTransfer> элемента <filter> позволяет переопределять цвета на уровне пикселей. Приведенные ниже значения:
<filter id="contrast">
<feComponentTransfer>
<feFuncR type="linear" slope="2" intercept="-0.5"/>
<feFuncG type="linear" slope="2" intercept="-0.5"/>
<feFuncB type="linear" slope="2" intercept="-0.5"/>
</feComponentTransfer>
</filter>
Эти значения дают одинаковый результат:
filter: contrast(200%); filter: url(#contrast); /* with embedded SVG */ filter: url(folder/fileName.svg#contrast); /* external svg filter definition */
В этом примере показаны три изображения: изображение с примененной функцией фильтра contrast(), изображение с эквивалентным примененным фильтром url(), и исходные изображения для сравнения:
Спецификации
Совместимость браузеров
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
contrast |
18 | 12 | 35 | 15 | 6 | 53 | 35 | 14 | 6 | 6.0 | 4.4 |
См. также
- Модуль CSS filter effects
- Другие
<filter-function>функции, доступные для использования в значениях свойствfilterиbackdrop-filter:
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/filter-function/contrast