CSS-свойство `color-interpolation`
Базовая поддержка Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и во многих версиях браузеров. Она доступна во всех браузерах с января 2020 года.
CSS-свойство color-interpolation используется в SVG для указания цветового пространства, применяемого элементами SVG <linearGradient> и <radialGradient>.
Синтаксис
/* Keyword values */ color-interpolation: auto; color-interpolation: sRGB; color-interpolation: linearRGB;
Значения
Для этого свойства указывается одно из следующих ключевых слов:
-
auto - Указывает, что пользовательский агент может выбрать пространство
sRGBилиlinearRGBдля интерполяции цветов. Этот параметр означает, что автор не требует выполнять интерполяцию цветов в определённом цветовом пространстве. -
sRGB - Указывает, что интерполяция цветов должна выполняться в цветовом пространстве sRGB. Используется по умолчанию, если свойство
color-interpolationне задано. -
linearRGB - Указывает, что интерполяция цветов должна выполняться в линеаризованном цветовом пространстве RGB, как описано в спецификации sRGB.
Формальное определение
| Значение |
auto | sRGB | linearRGB
|
|---|---|
| Применяется к |
<linearGradient> и <radialGradient>
|
| Значение по умолчанию | auto |
| Анимируемое | дискретно |
Формальный синтаксис
Пример
В первом примере SVG свойство color-interpolation не указано для элемента <linearGradient>, поэтому по умолчанию для интерполяции цветов используется sRGB. Во втором примере показана интерполяция цветов с использованием значения linearRGB.
<svg width="450" height="70">
<title>Example of using the color-interpolation CSS Property</title>
<defs>
<linearGradient id="sRGB">
<stop offset="0%" stop-color="white" />
<stop offset="25%" stop-color="blue" />
<stop offset="50%" stop-color="white" />
<stop offset="75%" stop-color="red" />
<stop offset="100%" stop-color="white" />
</linearGradient>
</defs>
<rect x="0" y="0" width="400" height="40" fill="url(#sRGB)" stroke="black" />
<text x="0" y="60" font-family="courier" font-size="16">
no color-interpolation (CSS property)
</text>
</svg>
<svg width="450" height="70">
<title>Example of using the color-interpolation CSS Property</title>
<defs>
<linearGradient id="linearRGB">
<stop offset="0%" stop-color="white" />
<stop offset="25%" stop-color="blue" />
<stop offset="50%" stop-color="white" />
<stop offset="75%" stop-color="red" />
<stop offset="100%" stop-color="white" />
</linearGradient>
</defs>
<rect
x="0"
y="0"
width="400"
height="40"
fill="url(#linearRGB)"
stroke="black" />
<text x="0" y="60" font-family="courier" font-size="16">
color-interpolation: linearRGB; (CSS property)
</text>
</svg>
svg {
display: block;
}
#linearRGB {
color-interpolation: linearRGB;
}
Спецификации
Совместимость с браузерами
| Для компьютеров | Для мобильных устройств | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
color-interpolation |
1 |
79 |
3 |
15 |
4 |
18 |
4 |
14 |
3.2 |
1.0 |
4.4 |
3.2 |
auto |
1 |
79 |
3 |
15 |
4 |
18 |
4 |
14 |
3.2 |
1.0 |
4.4 |
3.2 |
linearGradient |
Нет |
Нет |
123 |
Нет |
Нет |
Нет |
123 |
Нет |
Нет |
Нет |
Нет |
Нет |
linearRGB |
≤31 |
79 |
3 |
≤18 |
4 |
≤31 |
4 |
≤18 |
3.2 |
≤2.0 |
≤4.4.3 |
3.2 |
sRGB |
1 |
79 |
3 |
15 |
4 |
18 |
4 |
14 |
3.2 |
1.0 |
4.4 |
3.2 |
См. также
<linearGradient><radialGradient>- Атрибут SVG
color-interpolation
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/color-interpolation