Skip to the color picker

Purple to yellow gradient

A smooth purple to yellow gradient in CSS, blended in OKLab so the middle stays clean. Change the angle, add colors and copy the code.

Colors

Blend in

OKLab keeps the middle bright. sRGB is how old browsers blend and often turns gray in the middle.

Type
90°

CSS

background: linear-gradient(90deg, #800080, #903882, #a15881, #b1747f, #c1907a, #d0ac71, #e0c762, #f0e34a, #ffff00);
background: linear-gradient(90deg in oklab, #800080, #ffff00);

Tailwind CSS v4

bg-linear-90/oklab from-[#800080] to-[#ffff00]

Colors along the gradient

7

How purple and yellow blend in each color space

The same two colors give a different middle depending on the space the browser blends in. These are the exact colors at 50%. These two colors blend almost the same way in every space: the middle is #c1907a in OKLab and #c08040 in sRGB, so any of them works.

Blend inGradient previewMiddle colorLightnessChroma
OKLab#c1907a69.4%0.067
OKLCH#ff632869.4%0.202
sRGB#c0804065.2%0.112
LCH#ff5b5270.5%0.215
HSL#c0000050.6%0.208

Questions about this gradient

How do I make a purple to yellow gradient in CSS?

Use background: linear-gradient(90deg in oklab, #800080, #ffff00). Add a line before it with the sRGB version for very old browsers. Interpolation in OKLab works in all current browsers.

What color is halfway between purple and yellow?

Blended in OKLab, the color halfway between purple and yellow is #c1907a. A plain sRGB blend gives #c08040.

How do I make a purple to yellow gradient in Tailwind CSS?

In Tailwind CSS v4 use the classes bg-linear-90/oklab from-[#800080] to-[#ffff00].