stroke-dashoffset
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Die stroke-dashoffset
CSS Eigenschaft definiert einen Versatz für den Startpunkt der Darstellung des mit dem SVG Element verbundenen Stricharrays. Wenn vorhanden, überschreibt sie das Attribut stroke-dashoffset
des Elements.
Diese Eigenschaft gilt für jede SVG-Form oder Textinhaltelemente (siehe stroke-dashoffset
für die vollständige Liste), kann aber als geerbte Eigenschaft auch auf Elemente wie <g>
angewendet werden und hat weiterhin den gewünschten Effekt auf die Striche der Nachfahren-Elemente.
Syntax
/* Keyword */
stroke-dashoffset: none;
/* Length and percentage values */
stroke-dashoffset: 2;
stroke-dashoffset: 2px;
stroke-dashoffset: 2%;
/* Global values */
stroke-dashoffset: inherit;
stroke-dashoffset: initial;
stroke-dashoffset: revert;
stroke-dashoffset: revert-layer;
stroke-dashoffset: unset;
Werte
<number>
Nicht standardisiert-
Eine Anzahl von SVG-Einheiten, deren Größe durch den aktuellen Einheitenraum definiert wird. Der angegebene Wert, soweit er ungleich
0
ist, verschiebt den Startpunkt vom Anfang des Stricharrays zu einem anderen Punkt innerhalb desselben. Somit erscheinen positive Werte, als ob das Strich-Lückenmuster nach hinten verschoben wird, und negative Werte verschieben das Muster nach vorne. <length>
-
Pixeleinheiten werden genauso wie SVG-Einheiten behandelt (siehe
<number>
, oben) und schriftbasierte Längen wieem
werden in Bezug auf den SVG-Wert der Textgröße des Elements berechnet; die Auswirkungen anderer Längeneinheiten können vom Browser abhängen. Der Verschiebungseffekt für jeden Wert ist derselbe wie für<number>
-Werte (siehe oben). <percentage>
-
Prozentsätze beziehen sich auf die normierte Diagonale des aktuellen SVG-Ansichtsfensters, die wie folgt berechnet wird , nicht auf die Gesamtlänge des Strichpfads. Negative Werte sind ungültig.
Formale Definition
Anfangswert | 0 |
---|---|
Anwendbar auf | <circle> , <ellipse> , <line> , <path> , <polygon> , <polyline> , and <rect> elements in an svg |
Vererbt | Ja |
Prozentwerte | refer to the normalized diagonal measure of the current SVG viewport's applied viewBox , or of the viewport itself if no `viewBox` is specified |
Berechneter Wert | an absolute <length> or <percentage> , numbers converted to absolute lengths first |
Animationstyp | by computed value type |
Formale Syntax
stroke-dashoffset =
<length-percentage> |
<number>
<length-percentage> =
<length> |
<percentage>
Beispiele
Strichversatz
Um zu zeigen, wie Striche versetzt werden können, richten wir zunächst fünf identische Pfade ein, denen allen ein Stricharray von einem 20-Einheiten-Strich gefolgt von einer 3-Einheiten-Lücke über das SVG-Attribut stroke-dasharray
zugewiesen wird. (Dies hätte auch mit der CSS-Eigenschaft stroke-dasharray
gemacht werden können.) Den Pfaden werden dann individuelle Strichversätze über CSS zugewiesen.
<svg viewBox="0 0 100 50" width="500" height="250">
<rect x="10" y="5" width="80" height="30" fill="#EEE" />
<g stroke="dodgerblue" stroke-width="2" stroke-dasharray="20,3">
<path d="M 10,10 h 80" />
<path d="M 10,15 h 80" />
<path d="M 10,20 h 80" />
<path d="M 10,25 h 80" />
<path d="M 10,30 h 80" />
</g>
</svg>
path:nth-of-type(1) {
stroke-dashoffset: 0;
}
path:nth-of-type(2) {
stroke-dashoffset: -5;
}
path:nth-of-type(3) {
stroke-dashoffset: 5;
}
path:nth-of-type(4) {
stroke-dashoffset: 5px;
}
path:nth-of-type(5) {
stroke-dashoffset: 5%;
}
In der Reihenfolge:
- Dem ersten der fünf Pfade wird ein Versatz von Null zugewiesen, was das Standardverhalten ist.
- Der zweite Pfad erhält einen Versatz von
-5
, was den Startpunkt des Arrays fünf Einheiten vor dem Nullpunkt verschiebt. Der visuelle Effekt ist, dass das Strichmuster um fünf Einheiten nach vorne verschoben wird; somit sehen wir am Anfang des Pfads die letzten zwei Einheiten eines Strichs, gefolgt von einer dreieinheitigen Lücke. - Der dritte Pfad hat einen Versatz von
5
, was bedeutet, dass der Startpunkt der Striche fünf Einheiten in das Strichmuster hineinliegt. Der visuelle Effekt ist, dass das Strichmuster um fünf Einheiten nach hinten geschoben wird; somit sehen wir am Anfang des Pfades die letzten fünfzehn Einheiten eines Strichs, gefolgt von einer dreieinheitigen Lücke. - Der vierte Pfad hat einen Versatz von
5px
, der den gleichen Effekt wie ein Wert von5
hat (siehe vorher). - Der fünfte und letzte Pfad hat einen Versatz von
5%
, was dem Effekt der vorherigen beiden Beispiele sehr ähnlich ist, jedoch nicht ganz gleich. Prozentsätze werden gegenüber der Diagonale des SVG-Ansichtsfensters berechnet und können daher je nach Größe und Seitenverhältnis des Ansichtsfensters variieren.
Spezifikationen
Specification |
---|
CSS Fill and Stroke Module Level 3 # stroke-dashoffset |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- SVG
stroke-dashoffset
Attribut - CSS
stroke-dasharray
Eigenschaft - CSS
stroke
Eigenschaft