显示<;svg>;在iOS浏览器中使用<;html>;不使用<;嵌入>;标签
是否可以在iOS浏览器中显示显示<;svg>;在iOS浏览器中使用<;html>;不使用<;嵌入>;标签,ios,html,svg,Ios,Html,Svg,是否可以在iOS浏览器中显示中的内容,而无需使用或标签,这些标签要求我将内容存储在单独的文件中 在中嵌入内容似乎适用于所有其他现代浏览器(IE9、Chrome、甚至Windows上的Safari!) 我发现一些参考资料建议将内容类型更改为'text/xml'可能有效,但我无法更改它,因为我的代码是作为SharePoint 2010中移动服务器控件的一部分运行的 我的页面包含几个区域,每个区域都显示一个简单的图形。这些图形的数据存储在序列化对象中,在绘制svg多段线之前,需要对该对象进行反序列化。
中的
内容,而无需使用
或
标签,这些标签要求我将
内容存储在单独的文件中
在
中嵌入
内容似乎适用于所有其他现代浏览器(IE9、Chrome、甚至Windows上的Safari!)
我发现一些参考资料建议将内容类型更改为'text/xml'
可能有效,但我无法更改它,因为我的代码是作为SharePoint 2010中移动服务器控件的一部分运行的
我的页面包含几个
区域,每个区域都显示一个简单的图形。这些图形的数据存储在序列化对象中,在绘制svg多段线之前,需要对该对象进行反序列化。由于反序列化过程非常耗时,我更喜欢一次完成并在一次过程中生成所有图形,而不是生成单个svg文件的资源引用,这些文件可以由
标记引用
编辑:iOS5支持内联
。您是否尝试过使用
?我已经有一段时间没有这样做了,但是你可以用谷歌搜索。你可能需要在XHTML复合文档中使用内嵌SVG。在本例中,XML名称空间用于HTML根元素和内联SVG元素。有关相关示例,请参见此处:其他有用的例子可以在这里找到:
如果需要将SVG直接嵌入文档中 使用XHTML(不仅仅是HTML),提供正确的mime类型,SVG将在所有主要浏览器中正常工作,包括在iPhone和iPad上 此示例文件在XHTML中使用内联SVG,甚至在宿主文档中使用JavaScript和CSS来操作SVG:
它在iPhone/iPad上运行良好 如果需要引用外部文件 使用
标记直接引用SVG。这在iOS上有效
例如,在iPhone/iPad上打开此文件:哪些参考文献
请注意,在固定大小的
标记内呈现可变大小的SVG与此相关。(它似乎是从包含窗口的纵横比而不是
元素的尺寸中绘制SVG的纵横比。)如果使用该测试文件调整浏览器窗口的大小,您可以看到Chrome或Safari中的怪异之处 示例的html还引用了案例中的外部资源(heart.svg)。问题要求在不引用外部资源的情况下执行此操作。内嵌SVG在除iPhone和iPad之外的所有浏览器中都能很好地工作(甚至在Windows上的Safari中!)@PhilippSchmid goody!不知何故,我完全误读了原文的措词,把它倒过来了。(我以为您是说您不想使用
,但需要引用外部文件。)感谢您的澄清!然而,通过XHTML,内联SVG在iPhone和iPad上非常有效。我已经更新了我的答案来说明这一点。