<clipPath>
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2021.
Das <clipPath>
SVG-Element definiert einen Clipping-Pfad, der von der clip-path
-Eigenschaft verwendet wird.
Ein Clipping-Pfad beschränkt den Bereich, auf den Farbe angewendet werden kann. Konzeptionell werden Teile der Zeichnung, die außerhalb des durch den Clipping-Pfad begrenzten Bereichs liegen, nicht gezeichnet.
Beispiel
<svg viewBox="0 0 100 100">
<clipPath id="myClip">
<!--
Everything outside the circle will be
clipped and therefore invisible.
-->
<circle cx="40" cy="35" r="35" />
</clipPath>
<!-- The original black heart, for reference -->
<path
id="heart"
d="M10,30 A20,20,0,0,1,50,30 A20,20,0,0,1,90,30 Q90,60,50,90 Q10,60,10,30 Z" />
<!--
Only the portion of the red heart
inside the clip circle is visible.
-->
<use clip-path="url(#myClip)" href="#heart" fill="red" />
</svg>
/* With a touch of CSS for browsers who *
* implemented the r Geometry Property. */
@keyframes openYourHeart {
from {
r: 0;
}
to {
r: 60px;
}
}
#myClip circle {
animation: openYourHeart 15s infinite;
}
Ein Clipping-Pfad ist konzeptionell gleichbedeutend mit einem benutzerdefinierten Viewport für das referenzierende Element. Daher beeinflusst er die Darstellung eines Elements, nicht jedoch die eigene Geometrie des Elements. Der Begrenzungsrahmen eines geclippten Elements (also eines Elements, das ein <clipPath>
-Element über eine clip-path
-Eigenschaft referenziert, oder eines Kindes des referenzierenden Elements) muss derselbe bleiben, als wäre es nicht geclippt.
Standardmäßig werden pointer-events
nicht auf geclippte Bereiche geschickt. Zum Beispiel wird ein Kreis mit einem Radius von 10
, der auf einen Kreis mit einem Radius von 5
geclippt wurde, keine "Klick"-Ereignisse außerhalb des kleineren Radius empfangen.
Attribute
clipPathUnits
-
Definiert das Koordinatensystem für den Inhalt des
<clipPath>
-Elements. Wertetyp:userSpaceOnUse
|objectBoundingBox
; Standardwert:userSpaceOnUse
; Animierbar: ja
Verwendungskontext
Kategorien | Keine |
---|---|
Erlaubter Inhalt | Beliebige Anzahl folgender Elemente, in beliebiger Reihenfolge: Animationselemente Beschreibende Elemente Formelemente <text> , <use> |
Spezifikationen
Specification |
---|
CSS Masking Module Level 1 # ClipPathElement |
Browser-Kompatibilität
Verwandte Themen
- Andere Clipping- und Maskierungs-SVG-Elemente:
<mask>
- Einige CSS-Eigenschaften:
clip-path
,pointer-events