web应用开发使用svg图片,总结了下,可以有如下4种方式:
11. 直接插入页面。 22. img标签引入。 33. css引入。 44. object标签引入。
1. 直接插入页面
在html页面,可以直接使用svg标签。
1<!DOCTYPE html> 2<html> 3 <head> 4 <meta charset="utf-8"> 5 <title></title> 6 </head> 7 <body> 8 <!-- 一个svg图片 --> 9 <svg width="200" height="150" style="border: 1px solid steelblue"> 10 <!-- 里面有一个矩形 --> 11 <rect x="10" y="10" width="100" height="60" fill="skyblue"></rect> 12 </svg> 13 </body> 14</html>
运行效果:

2. img标签引入
除了在网页里直接写svg标签,也可以通过img引入,就像引入jpeg、png图片一样。
1)新建svg图片
那么我们就要先新建一个svg图片文件,我们把上面直接写在网页里的svg拿来用:
1<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150"> 2 <rect x="10" y="10" width="100" height="60" fill="skyblue"></rect> 3</svg>
这边内容有两点不一样:
11. 需要声明命名空间 xmlns 这个属性,命名空间可以本文尾部列出的参考资料。 22. 移除了原先写在 svg 标签上的样式,style="border: 1px solid steelblue"。
把内容保存到test.svg文件,这个就是一张图片文件了,可以尝试在浏览器打开看看。
2)使用img标签引入
假设test.svg和网页文件在同一个目录下:
1<img src="test.svg" style="border: 1px solid steelblue" />
和引入jpeg、png类似,直接src属性设置图片路径即可,另外我们把原先在svg的样式移到了img标签这边。
运行效果和上面是一样的:

现在网上有很多svg做的图片,可以参考:https://www.iconfont.cn,一个不错的icon图标网站。

3. css引入
css引入就是把图片当成背景图引入:
1<style type="text/css"> 2 .svg { 3 width: 200px; 4 height: 150px; 5 border: 1px solid steelblue; 6 background-image: url(test.svg); // 当成背景引入 7 } 8</style> 9<div class="svg"></div>
4. object引入
和img引入类似,需要一个svg文件,然后用属性data引入:
1<object data="test.svg" style="border: 1px solid steelblue"></object>
运行效果和上面类似,就不再贴图。
其他标签
其他标签如:embed、iframe标签虽然也可以引入,但是不推荐使用了,详情可以参考本文尾部列出的参考资料。
