html网页引入svg图片的4种方式


Posted in HTML / CSS onAugust 05, 2022

web应用开发使用svg图片,总结了下,可以有如下4种方式:

1. 直接插入页面。
2. img标签引入。
3. css引入。
4. object标签引入。

1. 直接插入页面

在html页面,可以直接使用svg标签。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<!-- 一个svg图片 -->
		<svg width="200" height="150" style="border: 1px solid steelblue">
			<!-- 里面有一个矩形 -->
			<rect x="10" y="10" width="100" height="60" fill="skyblue"></rect>
		</svg>
	</body>
</html>

运行效果:

html网页引入svg图片的4种方式

2. img标签引入

除了在网页里直接写svg标签,也可以通过img引入,就像引入jpeg、png图片一样。

1)新建svg图片

那么我们就要先新建一个svg图片文件,我们把上面直接写在网页里的svg拿来用:

<svg xmlns="http://www.w3.org/2000/svg" width="200" height="150">
	<rect x="10" y="10" width="100" height="60" fill="skyblue"></rect>
</svg>

这边内容有两点不一样:

1. 需要声明命名空间 xmlns 这个属性,命名空间可以本文尾部列出的参考资料。
2. 移除了原先写在 svg 标签上的样式,style="border: 1px solid steelblue"。

把内容保存到test.svg文件,这个就是一张图片文件了,可以尝试在浏览器打开看看。

2)使用img标签引入

假设test.svg和网页文件在同一个目录下:

<img src="test.svg" style="border: 1px solid steelblue" />

和引入jpeg、png类似,直接src属性设置图片路径即可,另外我们把原先在svg的样式移到了img标签这边。

运行效果和上面是一样的:

html网页引入svg图片的4种方式

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

html网页引入svg图片的4种方式

3. css引入

css引入就是把图片当成背景图引入:

<style type="text/css">
	.svg {
		width: 200px;
		height: 150px;
		border: 1px solid steelblue;
		background-image: url(test.svg); // 当成背景引入
	}
</style>
<div class="svg"></div>

4. object引入

和img引入类似,需要一个svg文件,然后用属性data引入:

<object data="test.svg" style="border: 1px solid steelblue"></object>

运行效果和上面类似,就不再贴图。

其他标签

其他标签如:embed、iframe标签虽然也可以引入,但是不推荐使用了,详情可以参考本文尾部列出的参考资料。

参考资料

命名空间:https://developer.mozilla.org/zh-CN/docs/Web/SVG/Namespaces_Crash_Course

embed标签:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/embed

iframe标签:https://developer.mozilla.org/zh-CN/docs/Learn/HTML/Multimedia_and_embedding/Other_embedding_technologies

到此这篇关于html网页引入svg图片的4种方式的文章就介绍到这了,更多相关html引入svg图片内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
使用CSS实现阅读进度条
Feb 27 HTML / CSS
css3+伪元素实现鼠标移入时下划线向两边展开的效果
Apr 25 HTML / CSS
js实现移动端H5页面手指滑动刻度尺功能
Nov 16 HTML / CSS
HTML5 File接口在web页面上使用文件下载
Feb 27 HTML / CSS
Html5如何唤起百度地图App的方法
Jan 27 HTML / CSS
HTML5 embed 标签使用方法介绍
Aug 13 HTML / CSS
浅谈HTML5新增和废弃的标签
Apr 28 HTML / CSS
iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
Apr 08 HTML / CSS
html5关于外链嵌入页面通信问题(postMessage解决跨域通信)
Jul 20 HTML / CSS
AmazeUI的下载配置与Helloworld的实现
Aug 19 HTML / CSS
移动端HTML5 input常见问题(小结)
Sep 28 HTML / CSS
使用css样式设计一个简单的html登陆界面的实现
Mar 30 HTML / CSS
HTML静态页面获取url参数和UserAgent的实现
Aug 05 #HTML / CSS
CSS使用Flex和Grid布局实现3D骰子
Aug 05 #HTML / CSS
css中:last-child不生效的解决方法
Aug 05 #HTML / CSS
CSS浮动引起的高度塌陷问题
Aug 05 #HTML / CSS
使用CSS实现六边形的图片效果
Aug 05 #HTML / CSS
el-form每行显示两列底部按钮居中效果的实现
Aug 05 #HTML / CSS
纯CSS打字动画的实现示例
Aug 05 #HTML / CSS
You might like
php中的MVC模式运用技巧
2007/05/03 PHP
PHP URL路由类实例
2013/11/12 PHP
淘宝ip地址查询类分享(利用淘宝ip库)
2014/01/07 PHP
php安装dblib扩展,连接mssql的具体步骤
2017/03/02 PHP
风吟的小型JavaScirpt库 (FY.JS).
2010/03/09 Javascript
javascript中call和apply方法浅谈
2013/09/27 Javascript
浅谈js的setInterval事件
2014/12/05 Javascript
JavaScript中的console.assert()函数介绍
2014/12/29 Javascript
极力推荐10个短小实用的JavaScript代码段
2016/08/03 Javascript
关于vue中watch检测到不到对象属性的变化的解决方法
2018/02/08 Javascript
webpack源码之loader机制详解
2018/04/06 Javascript
解决vue2.0路由跳转未匹配相应用路由避免出现空白页面的问题
2018/08/24 Javascript
Vue中的methods、watch、computed的区别
2018/11/26 Javascript
vue使用Google地图的实现示例代码
2018/12/19 Javascript
bootstrap与pagehelper实现分页效果
2018/12/29 Javascript
js中的reduce()函数讲解
2019/01/18 Javascript
js实现一个页面多个倒计时的3种方法
2019/02/25 Javascript
Vue+Express实现登录注销功能的实例代码
2019/05/05 Javascript
vue使用recorder.js实现录音功能
2019/11/22 Javascript
CKEditor扩展插件:自动排版功能autoformat插件实现方法详解
2020/02/06 Javascript
解决vue中使用less/sass及使用中遇到无效的问题
2020/10/24 Javascript
python 快速排序代码
2009/11/23 Python
Python每天必学之bytes字节
2016/01/28 Python
Python实现给PDF添加水印的方法
2021/01/25 Python
css3实现多个元素依次显示效果
2017/12/12 HTML / CSS
马来西亚网上花店:FlowerAdvisor马来西亚
2020/01/03 全球购物
瑞典多品牌连锁店:Johnells
2021/01/13 全球购物
教师开学感言
2014/02/14 职场文书
英语老师推荐信
2014/02/26 职场文书
查摆剖析材料范文
2014/09/30 职场文书
村党支部书记个人对照材料汇报
2014/10/26 职场文书
2014年高数考试作弊检讨书
2014/12/14 职场文书
2016大学生诚信考试承诺书
2016/03/25 职场文书
Python Pycharm虚拟下百度飞浆PaddleX安装报错问题及处理方法(亲测100%有效)
2021/05/24 Python
对Keras自带Loss Function的深入研究
2021/05/25 Python
MySQL池化框架学习接池自定义
2022/07/23 MySQL