SVG 在 HTML 页面


SVG在HTML页面中的应用

SVG,全称Scalable Vector Graphics,即可伸缩矢量图形,是一种基于XML格式的图形语言。与其他图像格式不同,SVG图像可缩放且不失真,在不同分辨率的设备上都能呈现出最佳效果。

在HTML页面中,SVG提供了一种完全可定制化的方式来呈现图形。以下是SVG在HTML页面中的应用:

引入SVG

使用SVG,需要在HTML代码中引入SVG文件。可以通过以下方式来引入SVG:

<svg xmlns="http://www.w3.org/2000/svg"
     width="100" height="100">
  <rect x="10" y="10" width="80" height="80"/>
</svg>

这段代码中,<svg>元素定义了SVG图形,在其中放置一个<rect>元素,绘制出一个矩形。在<svg>元素中,widthheight属性指定了SVG画布的大小。可以在<rect>元素中的属性中定义矩形的位置与大小。可以将这段代码存为SVG格式的文件,然后在HTML文件中直接引用该文件。

内联SVG

内联SVG是指将SVG代码直接嵌入到HTML代码中的方式。可以通过以下方式来嵌入SVG:

<svg xmlns="http://www.w3.org/2000/svg"
     width="100" height="100">
  <rect x="10" y="10" width="80" height="80"/>
</svg>

在这种方式下,SVG代码与HTML代码完全融合在一起,减少了网络请求次数,同时也提高了页面加载速度。

图形元素

SVG中包含了很多内置的图形元素例如矩形,圆形,线条等等。以下是一些常用的图形元素:

  • <rect>元素绘制矩形
  • <circle>元素绘制圆形
  • <ellipse>元素绘制椭圆
  • <line>元素绘制直线
  • <polyline>元素绘制折线
  • <polygon>元素绘制多边形

这些元素可以定义位置与大小,也可以定义颜色、填充等属性。

绘制路径

可以使用SVG的<path>元素来绘制路径。路径是由一些线段和曲线组成的形状。可以通过一系列的路径命令来绘制不同形状的路径。以下是一些常用的绘制路径命令:

  • M x y将起点移动到指定坐标
  • L x y从当前点绘制一条直线到指定坐标
  • H x从当前点绘制一条水平线到指定坐标
  • V y从当前点绘制一条垂直线到指定坐标
  • C x1 y1, x2 y2, x y从当前点绘制一条三次贝塞尔曲线到指定坐标
  • S x2 y2, x y从当前点绘制一条光滑的三次贝塞尔曲线到指定坐标

创建动画

SVG也支持在HTML页面中创建动画。可以通过定义关键帧来创建动画。以下是一个简单的SVG动画示例:

<svg width="100" height="100" xmlns="http://www.w3.org/2000/svg">
  <rect x="10" y="10" width="80" height="80">
    <animate attributeName="fill" attributeType="CSS"
             from="red" to="blue" dur="2s" repeatCount="indefinite" />
  </rect>
</svg>

在这个示例中,矩形从红色渐变到蓝色,并在2秒钟内重复这个过程。

以上是SVG在HTML页面中的一些应用,使用SVG可以轻松实现高品质可缩放的矢量图形,并为网页添加动态效果,提升用户体验。