The mix-blend-mode
CSS property sets how an element's content should blend with the content of the element's parent and the element's background.
The mix-blend-mode
CSS property sets how an element's content should blend with the content of the element's parent and the element's background.
/* Keyword values */ mix-blend-mode: normal; mix-blend-mode: multiply; mix-blend-mode: screen; mix-blend-mode: overlay; mix-blend-mode: darken; mix-blend-mode: lighten; mix-blend-mode: color-dodge; mix-blend-mode: color-burn; mix-blend-mode: hard-light; mix-blend-mode: soft-light; mix-blend-mode: difference; mix-blend-mode: exclusion; mix-blend-mode: hue; mix-blend-mode: saturation; mix-blend-mode: color; mix-blend-mode: luminosity; /* Global values */ mix-blend-mode: inherit; mix-blend-mode: initial; mix-blend-mode: revert; mix-blend-mode: revert-layer; mix-blend-mode: unset;
<blend-mode>
The blending mode that should be applied.
Initial value | normal |
---|---|
Applies to | all elements |
Inherited | no |
Computed value | as specified |
Animation type | discrete |
Creates stacking context | yes |
<div class="isolate"> <div class="circle circle-1"></div> <div class="circle circle-2"></div> <div class="circle circle-3"></div> </div>
.circle { width: 80px; height: 80px; border-radius: 50%; mix-blend-mode: screen; position: absolute; } .circle-1 { background: red; } .circle-2 { background: lightgreen; left: 40px; } .circle-3 { background: blue; left: 20px; top: 40px; } .isolate { isolation: isolate; /* Without isolation, the background color will be taken into account */ position: relative; }
<svg> <g class="isolate"> <circle cx="40" cy="40" r="40" fill="red" /> <circle cx="80" cy="40" r="40" fill="lightgreen" /> <circle cx="60" cy="80" r="40" fill="blue" /> </g> </svg>
circle { mix-blend-mode: screen; } .isolate { isolation: isolate; } /* Without isolation, the background color will be taken into account */
This example uses mix-blend-mode
to blend text color with the background color of its parent element.
<div class="container"> <p>Mostly Harmless</p> <p class="multiply">Mostly Harmless</p> <p class="screen">Mostly Harmless</p> <p class="hard-light">Mostly Harmless</p> </div>
@import url("https://fonts.googleapis.com/css2?family=Rubik+Moonrocks&display=swap"); .container { background-color: blue; } p { font: 4rem "Rubik Moonrocks", cursive; font-weight: bold; color: orange; padding: 0.5rem; margin: 0; } .multiply { mix-blend-mode: multiply; } .screen { mix-blend-mode: screen; } .hard-light { mix-blend-mode: hard-light; }
Specification |
---|
Compositing and Blending Level 2 # mix-blend-mode |
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
mix-blend-mode |
41 | 79 | 32 | No | 28 | 8 | 41 | 41 | 32 | 28 | 8 | 4.0 |
plus-lighter |
100 | 100 | 99 | No | No | 9.1 | 100 | 100 | 99 | No | 9.3 | 19.0 |
svg |
41 | 79 | 32 | No | 28 | No | No | No | 32 | No | No | No |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/mix-blend-mode