490 Stimmen

Wie kann man die Füllfarbe eines SVG-Bildes ändern, wenn es als Hintergrundbild verwendet wird?

Wenn ich die SVG-Ausgabe direkt inline mit dem Seitencode platziere, kann ich die Füllfarben einfach mit CSS ändern:

polygon.mystar {
    fill: blue;
}

circle.mycircle {
    fill: green;
}

Das funktioniert prima, aber ich suche nach einer Möglichkeit, das Attribut "fill" eines SVG zu ändern, wenn es als BACKGROUND-IMAGE verwendet wird.

html {      
    background-image: url(../img/bg.svg);
}

Wie kann ich die Farben jetzt ändern? Ist das überhaupt möglich?

Als Referenz sind hier die Inhalte meiner externen SVG-Datei:

<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
     width="320px" height="100px" viewBox="0 0 320 100" enable-background="new 0 0 320 100" xml:space="preserve">
<polygon class="mystar" fill="#3CB54A" points="134.973,14.204 143.295,31.066 161.903,33.77 148.438,46.896 151.617,65.43 134.973,56.679 
    118.329,65.43 121.507,46.896 108.042,33.77 126.65,31.066 "/>
<circle class="mycircle" fill="#ED1F24" cx="202.028" cy="58.342" r="12.26"/>
</svg>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X