Spec-Zone.ru › CSS

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%)

Формальный синтаксис

<contrast()> = 
contrast( [ <number> | <percentage> ]? )

Примеры

С свойством 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(), и исходные изображения для сравнения:

Спецификации

Спецификация
Модуль Filter Effects Level 1
# funcdef-filter-contrast

Совместимость браузеров

Рабочие столы Мобильные устройства
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:
    • blur()
    • brightness()
    • drop-shadow()
    • grayscale()
    • hue-rotate()
    • invert()
    • opacity()
    • saturate()
    • sepia()

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API