Laden Sie SVG inline und ändern Sie die Füllfarbe
P粉323224129
P粉323224129 2024-04-02 13:32:42
0
1
387

So verwende ich SVG:

<image x="0" y="0" width="40" height="40" href="/resource.svg"></image>

Dies ist die Ressource.svg:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="217px" height="131px" viewBox="-0.5 -0.5 217 131"><defs/><g><ellipse cx="108" cy="65" rx="108" ry="65" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/><ellipse cx="108" cy="65" rx="40" ry="40" fill="#a0522d" stroke="#6d1f00" pointer-events="all"/></g></svg>

Jetzt sollte ich die Farbe der SVG-Datei dynamisch ändern. Zu diesem Zweck habe ich überlegt, ob ich die SVG-Datei vollständig (inline?) und nicht als Link laden und dann die Werte für Füllung und Strich ersetzen könnte (mittels String-Ersetzung). Wenn ich es inline verwende, ist das auch mit CSS möglich?

Kann mir jemand helfen, wenn das möglich ist? Wenn ja, in welche Richtung muss ich weiter recherchieren?

P粉323224129
P粉323224129

Antworte allen(1)
P粉639667504

从 svg 代码中删除 fill 属性。这迫使它始终是白色的,就像现在一样。 或者,如果您在框架中工作,则可以使 fill 属性动态化(例如 fill={{myProp}})。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage