SVG 学习<一>

svg标签用来绘制sgv图片(矢量图);
svg和H5中的canvas类似,svg也可以绘制任意图形或文字;

svg标签默认大小为 300 * 150,svg也可设置css样式任意定义大小,颜色,边框,背景色等等;

注:svg默认为行级标签

绘制svg图形仅仅能在svg标签内显示,超出部分不会被显示;
  举个例子,若svg为300 * 150,rect则为 600 * 300那么矩形只会显示300 * 150的大小

矩形

HTML代码

<svg class="svg">
    <rect class="rect" />
</svg>

rect 绘制矩形

CSS代码

.rect{
    width:200px;
    height:200px;
    x:20px;                /*x轴距*/
    y:30px;                /*y轴距*/
    /*x,y皆以SVG左上角点为起始 及 svg左上角点左边为0,0*/
    fill:rgb(0,0,255);    /*填充色(同背景色)*/
    stroke-width:6;        /*笔触宽度(边框宽度)*/
    stroke:rgb(0,255,0);    /*笔触颜色(边框颜色)*/
    fill-opacity:.8;        /*填充色透明度(背景透明度)*/
    stroke-opacity:.5;        /*笔触透明度(边框透明度)*/
    rx:20px;                /*x轴弧度*/
    ry:50px;                /*y轴弧度*/
}

圆形

HTML代码

<svg class="svg">
    <circle class="circle" />
</svg>

circle绘制圆形

css代码

.circle{
    cx:100px;                /*圆心x轴距*/
    cy:100px;                /*圆心y轴距*/
    fill:rgb(0,0,255);    /*填充色(同背景色)*/
    stroke-width:6;        /*笔触宽度(边框宽度)*/
    stroke:rgb(0,255,0);    /*笔触颜色(边框颜色)*/
    r:80px;                    /*半径*/
}

椭圆

HTML代码

    <svg class="svg">
        <ellipse class="ellipse" />
    </svg>

ellipse绘制圆形

CSS代码

.ellipse{
    cx:300px;                /*圆心x轴距*/
    cy:150px;                /*圆心y轴距*/
    rx:200px;                /*x轴半径*/
    ry:100px;                /*y轴半径*/
    fill:rgb(0,0,255);    /*填充色(同背景色)*/
    stroke-width:6;        /*笔触宽度(边框宽度)*/
    stroke:rgb(0,255,0);    /*笔触颜色(边框颜色)*/
}

直线

HTML代码

    <svg class="svg">
        <line x1="2" y1="5" x2="90" y2="180" class="line" />
    </svg>

line绘制直线,x1 y1直线起点坐标, x2  y2 直线终点坐标,注意,x1 y1 x2 y2是标签属性,且不可在css中生效。

CSS代码

.line{
    stroke-width:2;        /*笔触宽度(直线宽度)*/
    stroke:rgb(0,255,0);    /*笔触颜色(直线颜色)*/
}

多边形

HTML代码

    <svg class="svg">
        <polygon points="100,10 40,180 190,60 10,60 160,180" class="polygon" />
    </svg>

polygon表示对变形

CSS代码

.polygon{
    stroke-width:2;        /*笔触宽度(边框宽度)*/
    stroke:rgb(0,255,0);    /*笔触颜色(边框颜色)*/
    fill:rgb(255,0,255);    /*填充色(同背景色)*/
    fill-rule:evenodd;        /*填充规则*/
}

fill-rule为填充色规则,evenodd 类似table的隔行变色。

待续。。。。。。

时间: 2024-10-03 20:27:06

SVG 学习<一>的相关文章

SVG 学习(一)

SVG 意为可缩放矢量图形(Scalable Vector Graphics). SVG 使用 XML 格式定义图像. 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用来定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形 SVG 图像在放大或改变尺寸的情况下其图形质量不会有所损失 SVG 是万维网联盟的标准 SVG 与诸如 DOM 和 XSL 之类的 W3C 标准是一个整体 SVG 的历史和优势 在 2003 年一月,SVG

HTML5实战——svg学习

百度百科: SVG可缩放矢量图形(Scalable Vector Graphics)是基于可扩展标记语言(XML),用于描述二维矢量图形的一种图形格式.SVG是W3C制定的一种新的二维矢量图形格式,也是规范中的网络矢量图形标准.SVG严格遵从XML语法,并用文本格式的描述性语言来描述图像内容,因此是一种和图像分辨率无关的矢量图形格式. 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用来定义用于网络的基于矢量的图形 SVG 使用 XML 格

[翻译]svg学习系列 开篇

网上svg的资料太少 买个书也买不到 碰巧遇到一个外国友人的svg学习些列,翻译下 http://tutorials.jenkov.com/svg/index.html svg 简介 可缩放矢量图形是基于可扩展标记语言(标准通用标记语言的子集),用于描述二维矢量图形的一种图形格式.它由万维网联盟制定,是一个开放标准. 今天的现代多数浏览器都支持SVG  ie9+ 火狐 chrome 等 svg 最大的用途就是绘图 各种图标 等 ,在网页上直接绘图 因为svg本身的dom节点,所以可以和网页上其他

SVG 学习&lt;五&gt; SVG动画

先上个动画图 说道SVG动画不得不提到两个属性:stroke-dasharray(这个前面有提到,做虚线的)stroke-dashoffset (这个是关键). 先说说stroke-dasharray 之前提过 可以把线条做成虚线状,值可以为一个数值 也可以是一个数组.详见:SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 最后一段.在动画里 stroke-dasharray 用来绘制路径或者虚线环绕效果. stroke-dashoffset : 官方解释 svg的

SVG学习笔录(一)

SVG可缩放矢量图形(Scalable Vector Graphics)这项技术,现在越来越让大家熟知,在h5的移动端应用使用也越来越广泛了, 下面让我分享给大家svg学习的经验. HTML体系中,最常用的绘制矢量图的技术是SVG和HTML5新增加的canvas元素.这两种技术都支持绘制矢量图和光栅图. 一.什么是svg? Graphics)是基于可扩展标记语言(XML),用于描述二维矢量图形的一种图形格式.SVG是W3C在2000年8月制定的一种新的二维矢量图形格式,也是规范中的网络矢量图形标

svg学习与体会

svg 学习和体会 1:适用范围,支持html5的浏览器,ie9+,chrome等浏览器.

svg学习心得一

之前一直看别人写的各种svg动画,画的svg图画,感觉好炫酷,也感觉好难,总有一种无法入手的感觉.但最近由于工作需要,要做一些小动画,要模仿app的原生的,就做了一些尝试及学习.下面是我的一些学习心得: 要做svg动画,就要首先了解一下svg动画的过程 以圆形缓冲加载动画为例: 首先要确定画布的位置: 画一个底边圆 画一个加载的圆 <svg xmlns="" version="1.1" id="my_appointment" width=&

SVG学习心得

在前端开发的过程中,为了界面的美观,会用到很多好看但无法纯利用HTML和CSS实现的图形(对于大佬们这就不算事了,但对于我这个刚入行的后生就难了),如下面的几个图形,如果不用美工妹妹的PS图片,我个人觉得是比较难实现的: 以上的图形利用纯HTML和CSS是比较难实现的,幸好前段时间刚好看到有篇关于SVG的实例讲解,学习了一下SVG,下面是我的学习心得(这是我第一次写博客,写的不好多多见谅) 1.什么是SVG?(这里引用w3school的定义) SVG 指可伸缩矢量图形 (Scalable Vec

SVG 学习(二)--- 创建组合交互式应用

接着上一节的内容,本次学习主要介绍SVG组合式应用以及js交互式应用! 1.组合式应用 绘制两棵带有投影效果的树! <svg width="400" height="600"> <defs> <pattern id="grap" patternUnits="userSpaceOnUse" x="0" y="0" width="100" h

SVG学习

学习svg非常不错的系列博文     突袭HTML5之SVG 2D入门1 - SVG综述     突袭HTML5之SVG 2D入门2 - 图形绘制     突袭HTML5之SVG 2D入门3 - 文本与图像     突袭HTML5之SVG 2D入门4 - 笔画与填充     突袭HTML5之SVG 2D入门5 - 颜色的表示     突袭HTML5之SVG 2D入门6 - 坐标与变换     突袭HTML5之SVG 2D入门7 - 重用与引用     突袭HTML5之SVG 2D入门8 - 文档