A mask
en CSS oculta parte del elemento al que se aplica.
.el ( mask-image: url(star.svg); )
Supongamos que tiene un elemento con un fondo fotográfico y un gráfico SVG en blanco y negro para usar como máscara, como este:
Puede establecer la imagen como a background-image
y la máscara como a mask-image
en el mismo elemento y obtener algo como esto:
Las máscaras tienen mucho en común con los fondos, ya que puede cambiar su tamaño, posicionarlas y repetirlas, como fondos. Consulte las propiedades relacionadas a continuación. Pero hay otra cosa interesante sobre las máscaras que comparten con los fondos: pueden ser degradados.
Aquí está el mismo gráfico de fondo, solo con una linear-gradient
máscara que lo cubre, lo que hace que la parte superior sea transparente y la parte inferior no es transparente en absoluto:
Eso funciona porque la parte superior del linear-gradient
es transparent
. Habría asumido que funcionaría si fuera white
tan bien como lo mask-type
fue luminance
, pero eso no parece funcionar en ningún navegador para mí.
Hablando de luminance
máscaras, eso no parece funcionar para imágenes como máscaras que son un formato de trama como JPG.webp o PNG para mí. Actualización : el lector Micheal Hall escribe con una demostración en la que podría tener algo que ver con el uso de las propiedades de mano larga. Firefox parece admitir este concepto si solo usa la abreviatura.
Pero las máscaras alfa parecen funcionar bien. Como en los gráficos de trama que utilizan transparencia alfa real. Como esto:
Y solo para demostrar un punto, una animación de color que puede ver a través de la máscara:
La mask-image
propiedad también se puede utilizar directamente dentro de los elementos SVG. Mira esta máscara elíptica que también tiene un filtro borroso:
Parece que podrías enganchar esa máscara SVG y aplicarla a otros elementos, mask-image: url(#mask);
pero no creo que eso realmente funcione. Solo funciona dentro de SVG y tiene el desagradable efecto secundario de borrar por completo una imagen si se usa fuera de SVG.
Soporte del navegador
Estos datos de soporte del navegador son de Caniuse, que tiene más detalles. Un número indica que el navegador admite la función en esa versión en adelante.
Escritorio
Cromo | Firefox | ES DECIR | Borde | Safari |
---|---|---|---|---|
91 * | 53 | No | 88 * | TP * |
Móvil / Tablet
Android Chrome | Android Firefox | Androide | Safari de iOS |
---|---|---|---|
88 * | 85 | 81 * | 14,0-14,4 * |