当html引入svg文件却不显示,可能由于svg不是所有浏览器都支持,firefox, chrome支持,ie有的低版本不支持。
解决方案:
<embed>标签被所有主流的浏览器支持,并允许使用脚本。
当在 HTML 页面中嵌入 SVG 时使用 <embed>标签是 Adobe SVG Viewer 推荐的方法,然而,如果需要创建合法的 XHTML,就不能使用 <embed>。
任何 HTML 规范中都没有 <embed>标签。
例如:需要下载adobe的svg viewer插件来显示。
<embed src="rect.svg" width="300" height="100"
type="image/svg+xml"
pluginspage="http://www.adobe.com/svg/viewer/install/" />
三种方式:
使用<embed>标签:
这个是官方推荐的用法,但是这个官方是Adobe官方,不是W3C官方,现在的HTML标准里还没有这个标签。
用法是:<embed src="example.svg" width="300" height="300" type="image/svg+xml" pluginspage="http://www.adobe.com/svg/viewer/install/" />
pluginspage是插件下载地址。
使用<object>标签:
这个是W3C的规范,在HTML标准里有这个标签,这个标签里面不能使用js。
用法:<object data="example.svg" width="300" height="300" type="image/svg+xml" codebase="http://www.adobe.com/svg/viewer/imstall/" />
codebase也是插件下载地址
另外,如果安装了Adobe SVG Viewer ,这个就不能使用(这是什么理论,插件下载地址都是一样的....)。
使用<iframe>标签:
这个是最简单粗暴的,直接在网页中嵌套了一个网页,这个就可以随便整了。
但是现在的页面都在去这个,这个不是规范,是潮流,不知道为啥。
兼容性贼好。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)