viewBox
Das Attribut viewBox
definiert die Position und Dimension eines SVG-Viewports im Benutzerspace.
Der Wert des viewBox
-Attributs ist eine Liste von vier Zahlen, die durch Leerzeichen und/oder Komma getrennt sind: min-x
, min-y
, width
und height
. min-x
und min-y
repräsentieren die kleinsten X- und Y-Koordinaten, die das viewBox
haben kann (die Ursprungskoordinaten des viewBox
), und width
und height
spezifizieren die Größe des viewBox
. Das resultierende viewBox
ist ein Rechteck im Benutzerspace, das auf die Grenzen des Viewports eines SVG-Elements (nicht den Browser-Viewport) abgebildet wird. Wenn ein SVG ein viewBox
-Attribut enthält (oft in Kombination mit einem preserveAspectRatio
-Attribut), transformiert es den SVG-Viewport, um in ein bestimmtes Containerelement zu passen.
Elemente
Sie können dieses Attribut mit den im folgenden Abschnitt beschriebenen SVG-Elementen verwenden.
<marker>
<pattern>
<svg>
<symbol>
<view>
Beispiele
Der folgende Codeausschnitt enthält drei <svg>
-Elemente mit verschiedenen viewBox
-Attributwerten und identischen <rect>
- und <circle>
-Nachkommen, die sehr unterschiedliche Ergebnisse erzeugen. Die Größe von <rect>
wird mit relativen Einheiten definiert, sodass die visuelle Größe des erzeugten Quadrats unabhängig vom viewBox
-Wert unverändert aussieht. Das Radiuslängen-Attribut r
des <circle>
ist in jedem Fall dasselbe, aber dieser Benutzer-Unit-Wert wird relativ zur im viewBox
definierten Größe aufgelöst und erzeugt in jedem Fall unterschiedliche Ergebnisse.
<svg viewBox="0 0 100 100" xmlns="http://www.w3.org/2000/svg">
<rect x="0" y="0" width="100%" height="100%" />
<circle cx="50%" cy="50%" r="4" fill="white" />
</svg>
<svg viewBox="0 0 10 10" xmlns="http://www.w3.org/2000/svg">
<rect x="0" y="0" width="100%" height="100%" />
<circle cx="50%" cy="50%" r="4" fill="white" />
</svg>
<svg viewBox="-5 -5 10 10" xmlns="http://www.w3.org/2000/svg">
<rect x="0" y="0" width="100%" height="100%" />
<circle cx="50%" cy="50%" r="4" fill="white" />
</svg>
Die Benutzereinheiten von r="4"
werden gegen die viewBox
-Größen aufgelöst und erzeugen dramatisch unterschiedliche Kreisgrößen. Die genaue Wirkung des viewBox
-Attributs wird durch das Attribut preserveAspectRatio
beeinflusst.
Hinweis:
Werte für width
oder height
, die kleiner oder gleich 0
sind, deaktivieren das Rendering des Elements.
Spezifikationen
Specification |
---|
Scalable Vector Graphics (SVG) 2 # ViewBoxAttribute |