HTML5中的SVG是什么?
什么是 SVG?
SVG 指可伸缩矢量图形 (Scalable Vector Graphics)
SVG 用于定义用于网络的基于矢量的图形
SVG 使用 XML 格式定义图形
SVG 图像在放大或改变尺寸的情况下其图形质量不会有损失
SVG 是万维网联盟的标准
SVG 圆形
要使用 SVG 绘制图形,你首先需要创建一个 <svg>
标签。
<svg width="1000" height="1000"></svg>
要创建一个圆形,需要添加一个 <circle>
标签。
下面是 SVG 代码:
<svg width="1000" height="1000"><circle cx="100" cy="50" r="40" fill="blue" />
</svg>
cx和cy属性定义圆点的x和y坐标。如果省略cx和cy,圆的中心会被设置为 (0, 0)。
r属性定义圆的半径。
运行显示结果如下图:
SVG 其他形状元素
我们来看看 SVG 一些预定义的其他形状元素:
SVG 矩形 - <rect>
<rect>
标签可用来创建矩形,以及矩形的变种。
<svg width="1000" height="1000"><rect width="400" height="200" x="20" y="20" fill="red" />
</svg>
运行显示结果如下图:
SVG 直线 - <line>
<line>
标签是用来创建一个直线。
<svg width="500" height="510"><line x1="20" y1="20" x2="300" y2="200" style="stroke:#000000; stroke-linecap:round; stroke-width:20" />
</svg>
运行显示结果如下图:
SVG 曲线 - <polyline>
<polyline> 标签是用于创建任何只有直线的形状。<svg width="2000" height="500"><polyline style="stroke-linejoin:miter; stroke:black; stroke-width:12; fill: none;"points="100 100, 150 150, 200 100" />
</svg>
运行显示结果如下图:
SVG 椭圆、多边形
SVG 椭圆 - <ellipse>
<ellipse>
标签是用来创建一个椭圆。
椭圆与圆很相似。不同之处在于椭圆有不同的x和y半径,而圆的x和y半径是相同的。
<svg width="500" height="250"><ellipse cx="200" cy="100" rx="150" ry="70" style="fill:red" />
</svg>
运行显示结果如下图:
SVG 多边形 - <polygon>
<polygon>
标签用来创建含有不少于三个边的图形。
<svg width="1000" height="1000">
<polygon points="100 100, 200 200, 300 0" style="fill: red; stroke:black;" />
</svg>
运行显示结果如下图:
SVG 动画
SVG 动画可以使用 <animate>
元素创建。
实例
创建一个矩形,将在3秒内更改其位置,然后重复动画两次:
<svg width="1000" height="250">
<rect width="150" height="150" fill="orange"><animate attributeName="x" from="0" to="300"dur="3s" fill="freeze" repeatCount="2"/>
</rect>
</svg>
attributeName:指定哪个属性需要产生动画效果
from:指定属性的起始值
to:指定属性的结束值
dur:指定动画运行的时间(持续时间)
fill=“freeze|remove”:指定动画播放完毕后是停留在播放的终点还是回到起始位置
repeatCount:指定动画的重复播放次数
在上面的例子中,矩形在3秒内将其x属性从0更改为300。
要无限重复动画,请使用值 “indefinite” 作为 repeatCount 属性。
SVG 路径
<path>
元素用于定义一个路径。
下面的命令可用于路径数据:
M = moveto
L = lineto
H = horizontal lineto
V = vertical lineto
C = curveto
S = smooth curveto
Q = quadratic Bézier curve
T = smooth quadratic Bézier curveto
A = elliptical Arc
Z = closepath
注意:以上所有命令均允许小写字母。大写表示绝对定位,小写表示相对定位。
实例
<svg width="500" height="500"><path d="M150 0 L75 200 L225 200 Z" />
</svg>
上面的例子定义了一条路径,它开始于位置150 0,到达位置75 200,然后从那里开始到225 200,最后在150 0关闭路径。
HTML5中的SVG是什么?相关推荐
- html5声明utf-8,HTML5中的SVG – 什么时候是XML声明`?xml version =“1.0”encoding =“UTF-8”?`需要吗?...
对于HTML5,正确的 DOCTYPE declaration是 需要为浏览器指定完整标准模式. 你所展示的, > XML 1.1没有得到广泛使用. 无论如何,> version =&qu ...
- svg如何平铺 html5,如何在HTML5中使用SVG
SVG 即 Scalable Vector Graphics,是一种用来绘制矢量图的 HTML5 标签.你只需定义好XML属性,就能获得一致的图像元素. 使用SVG之前先将标签加入到HTML body ...
- 如何在Html5中画SVG(矢量图)
什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用于定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 SVG 图像在放大或改变尺 ...
- HTML5 中 40 个最重要的技术点
我是一个ASP.NET MVC的开发者,最近在我找工作的时候被问到很多与HTML5相关的问题和新特性.所以以下40个重要的问题将帮助你复习HTML5相关的知识. 这些问题不是你得到工作的高效解决方案, ...
- html中svg的css,HTML5 内联 SVG
什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用于定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 SVG 图像在放大或改变尺 ...
- html可以用坐标画svg图吗,HTML5如何使用SVG的方法示例
代码优化永远是程序员亘古不变的需求,而合理的利用SVG图片来代替部分PNG/JPG等格式的图片则是前端优化重要的一环,既然是优化,那我们先来看看SVG图片都有哪些优势: SVG 可被非常多的工具读取和 ...
- HTML5 Canvas vs. SVG vs. div
本文翻译自:HTML5 Canvas vs. SVG vs. div What is the best approach for creating elements on the fly and be ...
- HTML5中最重要的技术点有哪些
HTML5在发展中不断的更新其自身技术,所以即便是HTML5从业者也会需要不断的去学习.掌握其新特性.本文总结一些HTML5中重要的技术点,希望对你有帮助. 为什么HTML5里面我们不需要DTD(Do ...
- html5 加载svg,HTML5 SVG应用(1)——loading效果
先看一下效果: 链接 代码: y="0px" width="40px" height="40px" viewBox="0 0 40 ...
- HTML5中绘制图形
介绍HTML5中的一个新增元素--canvas元素以及伴随这个元素而来的一套编程接口--canvas API. 使用canvas API可以在页面上绘制出任何你想要的.非常漂亮的图形与图像,创造出更加 ...
最新文章
- Linq基础知识小记二
- [转]WxEmojiView
- AlwaysOn只读路由配置
- 用计算机进行图片处理教学设计,三年级信息技术上教学设计
- java 入门 第二季3
- 从底层重学 Java 之 Stream 并行及标志 GitChat连接
- 元气骑士如何获得机器人成就皮肤_元气骑士:获得成就叹息之墙,花圃免费开,附带5000蓝币奖励...
- 计算机系统建模与仿真论文,计算机模拟 仿真论文.doc
- ​领域模型vs数据模型,应该怎么用?
- 机械振动的傅里叶变化分析技术
- 计算机控制实验室装置,自控/计控原理实验箱
- 大数据组项目文档整理方案
- 微信小程序npm引用ui框架
- 五子棋等级考试软件的开发(五)
- M26X2 4G工业路由器的技术应用
- macOS 13 Ventura系统自动开机在哪设置?
- 如何培养孩子的记忆力?猿辅导:这个方法家长一定要知道
- VMware Workstation 中安装CentOS-7-x84_64-DVD-1708.iso
- Python的正则表达式和re模块
- 请问肾阴虚吃什么药?饮食注意什么?还有桂附地黄丸是治肾阴虚还是治肾阳虚的?谢谢...
热门文章
- VMwarenbsp;vSpherenbsp;ESXiamp;nb…
- axure文件如何加密_axure怎么锁定位置
- WWW 2022最佳论文出炉!北京大学团队获唯一最佳学生论文奖
- Python项目实战:爬取糗事百科最热门的内涵搞笑段子
- Windows 11 v22000.318 11月更新版
- 从修复 testerhome(rubychina)网站的一个 bug 学习 rubyrails on ruby
- 高等数学(第七版)同济大学 习题7-2 个人解答
- 什么是telemetry
- jquery 立体走马灯_CSS3超酷3D文字跑马灯特效
- 【STM32Cube_14】使用硬件I2C读写环境光强度传感器(BH1750)