Le mask-origin
spécifie la zone de position du masque d'une image de calque de masque. En d'autres termes, il définit l'origine de l'image du calque de masque, qu'il s'agisse du bord de la bordure, du remplissage ou de la zone de contenu.
.element ( mask-image: url(star.svg); mask-origin: content-box; )
Pour les éléments rendus dans une seule boîte, mask-origin
spécifie la zone de positionnement du masque. Pour les éléments rendus sous forme de boîtes multiples (par exemple, des boîtes en ligne sur plusieurs lignes, des boîtes sur plusieurs pages), la propriété spécifie les boîtes box-decoration-break
sur lesquelles opère pour déterminer la zone de positionnement du masque.
Cette propriété fonctionne comme la background-origin
propriété, sauf qu'elle a une valeur initiale différente et trois valeurs supplémentaires qui s'appliquent aux éléments SVG.
Dans la démo suivante, vous pouvez modifier l'origine de l'image du calque de masque. Il y a la même image en dessous pour montrer l'effet de mieux masquer et de marquer les zones de bordure et de remplissage:
Syntaxe
mask-origin: = content-box | padding-box | border-box | margin-box | fill-box | stroke-box | view-box
- Valeur initiale:
border-box
- S'applique à: Tous les éléments. En SVG, il s'applique aux éléments conteneurs à l'exclusion de l'
élément, de tous les éléments graphiques et de l'
élément.
- Héritée: non
- Type d'animation: discret
Valeurs
/* Keywords */ mask-origin: content-box; mask-origin: padding-box; mask-origin: border-box; mask-origin: margin-box; mask-origin: fill-box; mask-origin: stroke-box; mask-origin: view-box;
/* Global values */ mask-origin: intial; mask-origin: inherit; mask-origin: unset;
Définitions de valeur
content-box
: La position est relative à la zone de contenu. L'origine demask-image
est positionnée dans le coin supérieur gauche du bord du contenu.padding-box
: La position est relative à la zone de remplissage. L'origine de l'image de masque0 0
est positionnée dans le coin supérieur gauche du bord de remplissage,100% 100%
c'est le coin inférieur droit.border-box
: La valeur par défaut, qui définit la position par rapport à la zone de bordure.margin-box
: La position est relative à la zone de margefill-box
: La position est relative au cadre de délimitation de l'objetstroke-box
: La position est relative à la zone de délimitation du traitview-box
: Utilise la fenêtre SVG la plus proche comme zone de référence. Si unviewBox
attribut est spécifié pour l'élément de création de la fenêtre SVG, la boîte de référence est positionnée à l'origine du système de coordonnées établi par l'viewBox
attribut et la dimension de la boîte de référence est définie sur les valeurswidth
etheight
de l'viewBox
attribut.initial
: Applique le paramètre par défaut de la propriété, qui estborder-box
inherit
: Adopte lamask-origin
valeur du parent.unset
: Supprime le courantmask-origin
de l'élément.
Utiliser plusieurs valeurs
Cette propriété peut prendre une liste de valeurs séparées par des virgules pour les origines de masque, où chaque valeur est appliquée à une image de calque de masque correspondante spécifiée dans la mask-image
propriété. Dans l'exemple suivant, la première valeur spécifie l'origine de la première image, la seconde valeur spécifie l'origine de la seconde image, et ainsi de suite.
.element ( mask-image: url(image1.png.webp), url(image2.png.webp), url(image3.png.webp); mask-origin: padding-box, border-box, content-box; )
Remarques
- Pour les éléments SVG sans boîte de mise en page CSS associée, les valeurs
content-box
,padding-box
etborder-box
Compute àfill-box
. - Pour les éléments avec boîte de mise en page CSS associée, les valeurs
fill-box
,stroke-box
etview-box
calcul à lainitial
valeurmask-origin
, ce qui estborder-box
.
Démo
Lorsque l'image du calque de masque est répétée, la première instance est positionnée dans le coin supérieur gauche de la zone de positionnement spécifiée, puis elle est répétée à partir de là en fonction de la valeur de la mask-repeat
propriété.
Modifiez la valeur de mask-origin
dans la démo suivante pour avoir une meilleure idée de ce qui se passe:
Prise en charge du navigateur
C'EST À DIRE | Bord | Firefox | Chrome | Safari | Opéra |
---|---|---|---|---|---|
Non | 79+ | 53+ | Tout | 4+ | 15+ |
Chrome Android | Android Firefox | Navigateur Android | Safari sur iOS | Opera Mobile |
---|---|---|---|---|
Tout | Tout | Tout | Tout | 59+ |
Informations connexes
Article le 6 nov.2016Détourage et masquage en CSS
![](8962560/mask-origin_css-tricks.jpg.webp)
![](8962560/mask-origin_css-tricks_2.jpg.webp)
![](8962560/mask-origin_css-tricks.jpg.webp)
![](8962560/mask-origin_css-tricks.jpg.webp)
![](8962560/mask-origin_css-tricks_3.jpg.webp)
![](8962560/mask-origin_css-tricks.jpg.webp)
![](8962560/mask-origin_css-tricks_3.jpg.webp)
![](8962560/mask-origin_css-tricks_3.jpg.webp)