xmlns="http://www.w3.org/2000/svg" version="1.1"
zu Ihrem svg-Tag hinzufügen.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/html1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us">
<head>
<title>SVG iPhone Test</title>
</head>
<body >
<svg width="500" height="220" xmlns="http://www.w3.org/2000/svg" version="1.1">
<rect x="2" y="2" width="496" height="216" stroke="#000" stroke-width="2px" fill="transparent"></rect>
</svg>
</body>
</html>
Der HTTP MIME-Typ durch http://www.invalidpage.com/svg/svgtest.html
geliefert ist "Content-Type: text/html"
. HTML-Inline-Svg funktioniert mit dem MIME-Typ "Content-Type: text/xml"
Sie können dies erstellen, indem Sie das Dokument mit XML anstelle von HTML beenden, wie sie done here haben.
Nicht sicher, ob Ipad sich um die Content-Type
kümmert, aber andere Browser tun.
Aktualisiert
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
auch verwendet werden kann; Es ist, was auf den Ipad Svg Beispielen gezeigt wird. Wenn das Dokument als XML und nicht als HTML ausgeliefert wird, sollte es mit <xml version="1.0" standalone="no">
starten;
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg width="500" height="220" xmlns="http://www.w3.org/2000/svg" version="1.1">
<rect x="2" y="2" width="496" height="216" stroke="#000" stroke-width="2px" fill="transparent"></rect>
</svg>
Eigentlich so, wie es ist es auf alles außer dem iPad/iPhone funktioniert, soweit ich das beurteilen kann. Ich habe RaphaelJS angeschlossen und es funktioniert jetzt auch auf iOS. Ich habe auch versucht, die Xmlns und Version Attribute, das gleiche Ergebnis, funktioniert überall außer iOS. –
Es rendert in Chrome, die Webkit-Engine verwendet (so sollte Ipad rendern - ich habe noch keinen): Aber nicht derzeit in Firefox 3.6.13 ... Das ist wahrscheinlich, weil Inhaltstyp ist "Content-Type: Text/html "... unter strikten XML-Regeln muss xmlns definiert werden. wendet keine strikten XML-Regeln an, aber Firefox 3.6.13 rendert leider immer noch nicht inline svg. ... mit http://code.google.com/chrome/chromeframe/ funktioniert es auch im Internet Explorer – Wayne
Ich weiß, dass es theoretisch in jedem Webkit-Browser funktionieren sollte, wenn es in einem funktioniert. Es tut es einfach nicht. Ich habe das ganze Zeug auf einer anderen Seite meiner primären Domain umgeblättert, um all die verschiedenen Optionen zu testen, die Sie vorgestellt haben, und keine funktionieren.Das einzige, was zu funktionieren scheint, ist das Erzeugen von Post-Load durch JavaScript. Ich habe die Originalseite alleine gelassen, damit sie immer noch mit der ursprünglichen Frage übereinstimmt. –