The oklch()
functional notation expresses a given color in the Oklch color space. It has the same L axis as oklab()
, but uses polar coordinates C (Chroma) and H (Hue).
Syntax
oklch(40.1% 0.123 21.57) oklch(59.69% 0.156 49.77) oklch(59.69% 0.156 49.77 / .5)
Values
Functional notation: oklch(L C H[ / A])
L
-
A
<number>()
between0
and1
, a<percentage>()
between0%
and100%
, or the keywordnone
, where the number0
corresponds to0%
(black) and the number1
corresponds to100%
(white).L
specifies the perceived lightness. C
-
A
<number>()
, a<percentage>()
, or the keywordnone
, where0%
is0
and100%
is the number0.4
. It is a measure of the chroma (roughly representing the "amount of color"). Its minimum useful value is0
, while the maximum is theoretically unbounded (but in practice does not exceed0.5
). H
-
A
<number>()
, an<angle>()
, or the keywordnone
, which represents the hue angle. More details on this type can be found on the<hue>()
reference. A
Optional-
An
<alpha-value>()
or the keywordnone
, where the number1
corresponds to100%
(full opacity).
Note: See Missing color components for the effect of none
.
Examples
Adjusting the lightness, chroma, and hue of a color
The following example shows the effect of varying the L
(lightness), C
(chroma), and H
(hue) values of the oklch()
color function.
HTML
<div data-color="blue"></div> <div data-color="blue-light"></div> <div data-color="red"></div> <div data-color="red-chroma"></div> <div data-color="green"></div> <div data-color="green-hue"></div>
CSS
[data-color="blue"] { background-color: oklch(60% 0.4 240); } [data-color="blue-light"] { background-color: oklch(90% 0.4 240); } [data-color="red"] { background-color: oklch(100% 0.4 30); } [data-color="red-chroma"] { background-color: oklch(100% 0.3 40); } [data-color="green"] { background-color: oklch(60% 0.57 161); } [data-color="green-hue"] { background-color: oklch(60% 0.57 181); }
Adjusting the alpha value of a color
The following example shows the effect of varying the A
(alpha) value of the oklch()
color function.
The red
and red-alpha
elements overlap the #background-div
element to demonstrate the effect of opacity.
Giving A
a value of 0.4
makes the color 40% opaque.
HTML
<div id="background-div"> <div data-color="red"></div> <div data-color="red-alpha"></div> </div>
CSS
[data-color="red"] { background-color: oklch(50% 130 20); } [data-color="red-alpha"] { background-color: oklch(50% 130 20 / 0.4); }
See also
<color>()
: For a list of all color notations- A perceptual color space for image processing
- OKLCH in CSS
- Safari Technology Preview 137 release notes: includes
oklch()
andoklab()
colors