Firefox SVG mit fill:url(#id) Stil im externen stylesheet gebrochen, inline-styles sind in Ordnung
In Firefox nur, wenn ich versuche zu geben, einen svg-Pfad eines pattern-Verweis wie:
Pfad {
fill: url(#ref);
}
in einem externen Stylesheet, macht es unsichtbar. Wenn ich es Tue, inline -, oder in einen tag auf der Seite, es funktioniert.
Hier ist meine Geige vom Hals, und hier ist mein code dump weil SO wird nicht lassen Sie mich einfach nur die Geige.
http://jsfiddle.net/v5VDp/1/
<pattern id="texture_base" x="0" y="0" patternUnits="userSpaceOnUse" height="122" width="213">
<image x="0" y="0" width="213" height="122" xlink:href=""/>
</pattern>
<pattern id="texture1" x="0" y="0" patternUnits="userSpaceOnUse" height="122" width="213">
<rect fill='url(#color1)' stroke="none" x="0" y="0" width="213" height="122"/>
<rect fill='url(#texture_base)' x="0" y="0" width="213" height="122"/ />
</pattern>
</defs>
</svg>
.Scheibe:nth-child(6n + 2) path {
fill: url(#texture1);
}
https://dl.dropbox.com/s/wkzaoiwnw6ghsmd/simple_svg_test.css
Du musst angemeldet sein, um einen Kommentar abzugeben.
#texture1
ist die Abkürzung für<url of this file>
+#texturl
. Also in einem externen stylesheet#texture1
zeigen wird, etwas in der stylesheet selbst, die nicht gefunden werden, da sich das element in die svg-Datei.Webkit hat immer das falsche, die viel Verwirrung verursacht. Sollten Sie feststellen Oper entspricht Firefox Verhalten wie IE.
Wenn Sie möchten, tun Sie dies in der stylesheet müsstest du eine absolute URL wie z.B. url(http://jsfiddle.net/v5VDp/1/#texture1)
Dies ist abgedeckt durch die CSS-Spezifikation. Sie könnte jederzeit Kontakt zu den Der CSS-Arbeitsgruppe und vorschlagen, dass Sie etwas über es tun.
SVG "fill: url(#...)" seltsam Verhalten im Firefox, wenn wir die Zuordnung der unter code mit css(externe und interne css.)
Lösung
geben, inline-styling, diese kann getan werden, beide Möglichkeiten. Statische oder dynamische Weise
Dynamische Weise
Statische Weise
In statische, müssen Sie diese in den SVG-Html;