This is an experimental technology
Because this technology's specification has not stabilized, check the compatibility table for usage in various browsers. Also note that the syntax and behavior of an experimental technology is subject to change in future versions of browsers as the specification changes.
Summary
The mask-mode
CSS property indicates whether the mask reference defined by mask-image
is treated as a luminance or alpha mask.
Initial value | match-source |
---|---|
Applies to | all elements; In SVG, it applies to container elements excluding the <defs> element and all graphics elements |
Inherited | no |
Media | visual |
Computed value | as specified |
Animation type | discrete |
Canonical order | the unique non-ambiguous order defined by the formal grammar |
Syntax
/* Keyword values */ mask-mode: alpha; mask-mode: luminance; mask-mode: match-source; /* Multiple values */ mask-mode: alpha, match-source; /* Global values */ mask-mode: inherit; mask-mode: initial; mask-mode: unset;
Values
alpha
- This keyword indicates that the transparency (alpha channel) values of the mask layer image should be used as the mask values.
luminance
- This keyword indicates that the luminance values of the mask layer image should be used as the mask values.
match-source
-
If the
mask-image
property is of type <mask-source>, the luminance values of the mask layer image should be used as the mask values.If it is of type
<image>
, the alpha values of the mask layer image should be used as the mask values.
Formal syntax
<masking-mode>#
Example
CSS Content
#masked { width: 227px; height: 200px; background: blue linear-gradient(red, blue); mask-image: url(https://mdn.mozillademos.org/files/12668/MDN.svg); mask-mode: alpha; /* Can be changed in the live sample */ }
HTML Content
<div id="masked"> </div> <select id="maskMode"> <option value="alpha">alpha</option> <option value="luminance">luminance</option> <option value="match-source">match-source</option> </select>
JavaScript Content
var maskMode = document.getElementById("maskMode"); maskMode.addEventListener("change", function (evt) { document.getElementById("masked").style.maskMode = evt.target.value; });
Specifications
Specification | Status | Comment |
---|---|---|
CSS Masking Level 1 The definition of 'mask-mode' in that specification. |
Candidate Recommendation | Initial definition |
Browser compatibility
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Edge | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Basic support | No support | No support[1] | No support | ? | No support | No support |
Feature | Android | Firefox Mobile (Gecko) | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | No support | No support[1] | No support | No support | No support |
[1] This feature is not implemented yet. It is only available in Nightly and Dev Edition. See bug 1251161.