SVG steht für "Scalable Vector Graphics" welche eine verlustfreie Skalierung ermöglicht. SVG's können mit entsprechenden Grafikprogrammen (Adobe Illustrator, Affinity Designer, Corel Draw, Inkscape usw.) erstellt werden. Einfache Formen können jedoch auch "zu Fuß" mit Hilfe der entsprechenden Markup's erstellt werden.
SVG's eignen sich besoders für Formen, teilweise Logos, Schaltpläne und vieles mehr. Ein sehr großer Vorteil liegt in der Größe, Skalierbarkeit und der Möglichkeit einzelne Elemente oder Gruppen leicht zu animieren oder als Schaltfläche zu benutzen.
SVG Elemente müssen ein öffnendes und ein schließendes Tag besitzen, dies kann auf zwei Arten geschehen
<svg style='width: 100%; border:1px solid black;'> <path d='M0 0 H150 V100 H0 z' style='stroke:green; stroke-width:25px; fill:red;' /> <path d='M200 30 h150 v100 h-150 z' style='stroke:green; stroke-width:25px; fill:red;' /> </svg>
Bei dem ersten Path der bei 0,0 (M0 0) begint, geht an der oberen und der linken Kante die Hälfte der Linienstärke verloren. Mit der CSS Eigenschaft overflow: visible; kann man dies umgehen, ist aber eher untypisch da sie dann aus dem Dokumentenfluss treten.
Einige wichtige Markup's
Da SVG direkt in die HTML Seite eingebunden wird, werden Zeilen auf die gleiche Art wie bei HTML auskommentiert (<!-- Kommentar -->);