Właściwość mask-mode

Właściwość mask-mode ustawia sposób interakcji maski z tłem elementu. Określa, czy maska będzie wykorzystywać kanał alfa (przezroczystość) czy wartości jasności (luminance) obrazu-maski.

Składnia

cssselektor {
  mask-mode: alpha | luminance | match-source;
}

Wartości

Wartość Opis
alpha Maska wykorzystuje tylko kanał alfa (przezroczystość) obrazu.
luminance Maska wykorzystuje wartości jasności obrazu (biały = widoczny, czarny = przezroczysty).
match-source Dla obrazów używa kanału alfa, dla SVG - luminance (wartość domyślna).

Przykład . Tryb alpha

Zastosowanie maski SVG w trybie alpha:

html<img id="image" src="image.jpg">
css#image {
  width: 500px;
  height: 281px;
  mask: url("heart.svg") center/150px no-repeat;
  mask-mode: alpha;
}

Результат:

Przykład . Tryb luminance

Zastosowanie maski SVG w trybie luminance:

html<img id="image" src="image.jpg">
css#image {
  width: 500px;
  height: 281px;
  mask: url("heart.svg") center/150px no-repeat;
  mask-mode: luminance;
}

Результат:

Przykład . Maska SVG z trybem match-source

Użycie wartości domyślnej (match-source) dla SVG:

html<img id="image" src="image.jpg">
<svg width="0" height="0">
  <mask id="svg-mask">
    <path d="M150 15L183 111L285 111L204 171L237 267L150 216L63 267L96 171L15 111L117 111Z" fill="white"/>
  </mask>
</svg>
css#image {
  width: 500px;
  height: 281px;
  mask: url(#svg-mask);
  mask-mode: match-source;
}

Результат:

Przykład . Kompozycja z różnymi trybami

Łączenie masek z różnymi trybami nakładania:

html<img id="image" src="image.jpg">
css#image {
  width: 500px;
  height: 281px;
  mask: 
    url("heart.svg") 100px 50px / 150px no-repeat alpha,
    url("arrow.svg") 200px 30px / 150px no-repeat luminance;
  mask-composite: add;
}

Результат:

Zobacz też

  • właściwość mask-image,
    ustawia obraz dla maski
  • właściwość mask-composite,
    określa interakcję wielu masek
  • właściwość mask,
    skrót dla wszystkich właściwości maskowania