Propriedade mask-image
A propriedade mask-image permite definir uma imagem que será usada como máscara para um elemento. A máscara determina quais partes do elemento serão visíveis e quais serão ocultadas. Como máscara, você pode usar SVG, imagens PNG ou gradientes.
Sintaxe
seletor {
mask-image: none | <image> | <url>;
}
Valores
| Valor | Descrição |
|---|---|
none |
Desativa o mascaramento (valor padrão). |
url() |
Caminho para a imagem de máscara (SVG, PNG). |
linear-gradient() |
Gradiente linear como máscara. |
radial-gradient() |
Gradiente radial como máscara. |
Exemplo . Usando SVG como máscara
Aplicaremos uma imagem SVG de um coração como máscara em uma imagem:
<img id="image" src="image.jpg">
#image {
width: 500px;
height: 281px;
mask-image: url("heart.svg");
mask-position: center;
mask-size: 300px;
mask-repeat: no-repeat;
}
:
Exemplo . Usando gradiente como máscara
Aplicaremos um gradiente linear como máscara para um elemento:
<div id="elem"></div>
#elem {
width: 500px;
height: 300px;
background: linear-gradient(45deg, red, blue);
mask-image: linear-gradient(to right, transparent, black);
}
:
Exemplo . Usando elemento SVG como máscara
Criaremos uma máscara usando um elemento SVG e a aplicaremos a uma imagem:
<img id="image" src="image.jpg">
<svg width="0" height="0">
<mask id="mask">
<path d="M150 15L183 111L285 111L204 171L237 267L150 216L63 267L96 171L15 111L117 111Z" fill="white"/>
</mask>
</svg>
#image {
width: 500px;
height: 281px;
mask-image: url(#mask);
mask-position: center;
mask-size: contain;
mask-repeat: no-repeat;
}
:
Veja também
-
propriedade
mask-position,
define a posição da máscara em relação ao elemento -
propriedade
mask-size,
define o tamanho da máscara -
propriedade
mask-repeat,
define a repetição da máscara -
propriedade
mask-mode,
define como a máscara interage com o fundo -
propriedade
mask,
atalho para todas as propriedades de mascaramento