Mam element SVG z obiektem foreignObject, który zawiera element div. Następnie w moim js robię to:SVG foreignObject nie wyświetla się w Chrome
$("#wrapper>svg>foreignObject>div").sparkline(data);
który tworzy płótno w ramach div. Kiedy patrzę na kod html Firebug dla dwóch przeglądarki to:
Firefox:
<svg>
<foreignObject width="20" height="20" x="10" y="-10">
<div>
<canvas style="display: inline-block; width: 18px; height: 19px; vertical-align: top;" width="18" height="19"></canvas>
</div>
</foreignObject>
</svg>
Chrome:
<svg>
<foreignobject width="20" height="20" x="10" y="-10"/>
<svg>
w Chrome to nie robi nawet pokazać div. Sposób tworzenia elementu div to Firefox działa tak jak oczekuję, że zadziała. Ale chrom nie. Czy ktoś ma jakieś sugestie?
Sądzę, że częścią problemu jest to, że wynik HTML chrome firebug pokazuje "foreignobject", ale Firefox pokazuje "foreignObject" w taki sposób, w jaki został dodany.
Fajne @Demosthenes dzięki to działało. –
Może warto byłoby to zaktualizować, ponieważ wydaje się, że Chrome zmienił swoje zachowanie, a element podrzędny musi być teraz opakowany - dziwnie Edge nie dba o to w żaden sposób. W obu przeglądarkach nie jest wymagana przestrzeń nazw (ale inne mogą być nadal wybredne). – dav1dsm1th