Propriedade mask-mode
A propriedade mask-mode define a maneira como uma máscara interage com o fundo de um elemento. Ela determina se a máscara usará o canal alfa (transparência) ou os valores de luminância da imagem de máscara.
Sintaxe
seletor {
mask-mode: alpha | luminance | match-source;
}
Valores
| Valor | Descrição |
|---|---|
alpha |
A máscara usa apenas o canal alfa (transparência) da imagem. |
luminance |
A máscara usa os valores de luminância da imagem (branco = visível, preto = transparente). |
match-source |
Para imagens usa o canal alfa, para SVG usa luminance (valor padrão). |
Exemplo . Modo alpha
Aplicação de máscara SVG no modo alpha:
<img id="image" src="image.jpg">
#image {
width: 500px;
height: 281px;
mask: url("heart.svg") center/150px no-repeat;
mask-mode: alpha;
}
:
Exemplo . Modo luminance
Aplicação de máscara SVG no modo luminance:
<img id="image" src="image.jpg">
#image {
width: 500px;
height: 281px;
mask: url("heart.svg") center/150px no-repeat;
mask-mode: luminance;
}
:
Exemplo . Máscara SVG com modo match-source
Usando o valor padrão (match-source) para SVG:
<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>
#image {
width: 500px;
height: 281px;
mask: url(#svg-mask);
mask-mode: match-source;
}
:
Exemplo . Composição com diferentes modos
Combinando máscaras com diferentes modos de composição:
<img id="image" src="image.jpg">
#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;
}
:
Veja também
-
propriedade
mask-image,
define a imagem para a máscara -
propriedade
mask-composite,
define a interação de múltiplas máscaras -
propriedade
mask,
atalho para todas as propriedades de mascaramento