我有本地HTML文件,我用UIWebView显示。一切都很好,除了嵌入在svg标签中的图像,如:
<body>
<div>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="100%" height="100%" viewBox="0 0 274 500" preserveAspectRatio="none">
<image width="274" height="500" xlink:href="cover.jpeg"/>
</svg>
</div>
</body>
正常<img>
标记工作正常,因此baseURL没有任何问题,并且图像位于同一文件夹中。 HTML文件在Mobile Safari中正常加载。
我已经尝试使用-loadRequest:和-loadString:baseURL:和-loadData:MIMEType:textEncodingName:baseURL加载,但我总是得到一个对应于图像宽度和高度的边框,没有实际图像。
可能出现什么问题?
答案 0 :(得分:1)
终于解决了这个问题。 DOCTYPE设置为严格的XHTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
但文件扩展名为html。
将文件扩展名更改为.xhtml解决了问题。