Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

mask-clip CSS property

Baseline
Weitgehend verfügbar
*

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Dezember 2023 browserübergreifend verfügbar.

* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.

Die CSS-Eigenschaft mask-clip bestimmt den Bereich, auf den sich eine Maske auswirkt. Der gezeichnete Inhalt eines Elements wird auf diesen Bereich begrenzt.

Syntax

css
/* <coord-box> values */
mask-clip: content-box;
mask-clip: padding-box;
mask-clip: border-box;
mask-clip: fill-box;
mask-clip: stroke-box;
mask-clip: view-box;

/* Keyword value */
mask-clip: no-clip;

/* Multiple values */
mask-clip: padding-box, no-clip;
mask-clip: view-box, fill-box, border-box;

/* Global values */
mask-clip: inherit;
mask-clip: initial;
mask-clip: revert;
mask-clip: revert-layer;
mask-clip: unset;

Werte

Die Eigenschaft akzeptiert eine durch Kommas getrennte Liste von Schlüsselwortwerten. Jeder Wert ist entweder ein <coord-box> oder no-clip:

content-box

Der gezeichnete Inhalt wird auf die Inhaltsbox begrenzt.

padding-box

Der gezeichnete Inhalt wird auf die Padding-Box begrenzt.

border-box

Der gezeichnete Inhalt wird auf die Border-Box begrenzt.

fill-box

Der gezeichnete Inhalt wird auf die Begrenzungsbox des Objekts begrenzt.

stroke-box

Der gezeichnete Inhalt wird auf die Begrenzungsbox der Kontur begrenzt.

view-box

Verwendet den nächstgelegenen SVG-Viewport als Referenzbox. Wenn für das Element, das den SVG-Viewport erstellt, ein viewBox-Attribut angegeben ist, liegt der Ursprung der Referenzbox am Ursprung des durch das viewBox-Attribut festgelegten Koordinatensystems. Die Abmessungen der Referenzbox entsprechen den Werten für Breite und Höhe des viewBox-Attributs.

no-clip

Der gezeichnete Inhalt wird nicht begrenzt.

border

Dieses Schlüsselwort verhält sich wie border-box.

padding

Dieses Schlüsselwort verhält sich wie padding-box.

content

Dieses Schlüsselwort verhält sich wie content-box.

text

Dieses Schlüsselwort begrenzt das Maskenbild auf den Text des Elements.

Beschreibung

Die Eigenschaft mask-clip definiert den Bereich des Elements, auf den sich die angewendete Maske auswirkt.

Bei Maskenebenenbildern, die nicht auf ein SVG-Element <mask> verweisen, definiert die Eigenschaft mask-clip den Zeichenbereich der Maske, also den Bereich, auf den sich die Maske auswirkt. Der gezeichnete Inhalt des Elements wird auf diesen Bereich begrenzt.

Die Eigenschaft mask-clip hat keine Auswirkung auf ein Maskenebenenbild, das auf ein <mask>-Element verweist. Wenn die Quelle von mask-image ein <mask>-Element ist, bestimmen dessen Attribute x, y, width, height und maskUnits den Zeichenbereich der Maske.

Auf ein Element können mehrere Maskenebenen angewendet werden. Die Anzahl der Ebenen richtet sich nach der Anzahl der durch Kommas getrennten Werte der Eigenschaft mask-image (auch wenn ein Wert none ist). Jeder mask-clip-Wert in der durch Kommas getrennten Werteliste wird der Reihe nach einem mask-image-Wert zugeordnet. Unterscheidet sich die Anzahl der Werte der beiden Eigenschaften, werden überzählige mask-clip-Werte nicht verwendet. Hat mask-clip weniger Werte als mask-image, werden die mask-clip-Werte wiederholt.

Formale Definition

Anfangswertborder-box
Anwendbar aufalle Elemente; In SVG gilt betrifft dies Containerelemente mit Ausnahme des <defs> Elements und allen Grafikelementen
VererbtNein
Berechneter Wertwie angegeben
Animationstypdiskret

Formale Syntax

mask-clip = 
[ <coord-box> | no-clip ]#

<coord-box> =
<paint-box> |
view-box

<paint-box> =
<visual-box> |
fill-box |
stroke-box

<visual-box> =
content-box |
padding-box |
border-box

Beispiele

Eine Maske auf die Border-Box begrenzen

Dieses Beispiel zeigt drei mask-clip-Werte.

HTML

Wir verwenden drei Elemente, die jeweils einen anderen <coord-box>-Wert als Klassennamen haben.

html
<div class="border-box"></div>
<div class="padding-box"></div>
<div class="content-box"></div>

CSS

Das CSS legt für die Elemente einen Hintergrund, einen Rahmen, Innen- und Außenabstände sowie ein Maskenbild fest. Jedes <div> erhält einen anderen <coord-box>-Wert. Wir erzeugen Inhalt mit dem jeweiligen Klassennamen und verschieben diesen Text um 10px nach oben, damit er nicht durch die Maske ausgeblendet wird.

css
div {
  width: 100px;
  height: 100px;
  background-color: #8cffa0;
  margin: 10px;
  border: 20px solid #8ca0ff;
  padding: 20px;
  mask-image: url("https://mdn.github.io/shared-assets/images/examples/mdn.svg");
  mask-size: 100% 100%;
}
.content-box {
  mask-clip: content-box;
}
.border-box {
  mask-clip: border-box;
}
.padding-box {
  mask-clip: padding-box;
}
div::before {
  content: attr(class);
  position: relative;
  top: -10px;
}

Ergebnisse

Spezifikationen

Spezifikation
CSS Masking Module Level 1
# the-mask-clip

Browser-Kompatibilität

Siehe auch