SVG 学习<一>基础图形及线段
目录
SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组
SVG 学习<七> SVG的路径——path(1)直线命令、弧线命令
SVG 学习<八> SVG的路径——path(2)贝塞尔曲线命令、光滑贝塞尔曲线命令
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
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:; /*笔触宽度(边框宽度)*/
- 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:; /*笔触宽度(边框宽度)*/
- 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:; /*笔触宽度(边框宽度)*/
- 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:; /*笔触宽度(直线宽度)*/
- 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:; /*笔触宽度(边框宽度)*/
- stroke:rgb(0,255,0); /*笔触颜色(边框颜色)*/
- fill:rgb(255,0,255); /*填充色(同背景色)*/
- fill-rule:evenodd; /*填充规则*/
- }
fill-rule为填充色规则,evenodd 类似table的隔行变色。
折线
HTML代码
- <svg class="svg">
- <polyline points="100,10 40,180 190,60 10,60 160,180" class="polygon" />
- </svg>
CSS代码
- .polygon{
- stroke-width:; /*笔触宽度(线段宽度)*/
- stroke:rgb(0,255,0); /*笔触颜色(线段颜色)*/
- fill:none;
- }
折线和多边形几乎一样,折线标签是polyline 多边形是polygon 。
本文介绍svg的几个基本图形和线段。下一篇介绍svg进阶玩法。
SVG 学习<一>基础图形及线段的更多相关文章
- SVG 学习<四> 基础API
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- SVG 学习<八> SVG的路径——path(2)贝塞尔曲线命令、光滑贝塞尔曲线命令
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- SVG 学习<七> SVG的路径——path(1)直线命令、弧线命令
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- SVG 学习<六> SVG的transform
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- SVG 学习<五> SVG动画
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- SVG 学习<三>渐变
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组
目录 SVG 学习<一>基础图形及线段 SVG 学习<二>进阶 SVG世界,视野,视窗 stroke属性 svg分组 SVG 学习<三>渐变 SVG 学习<四 ...
- D3.js学习笔记(六)——SVG基础图形和D3.js
目标 在这一章,我们将会重温SVG图形,学习如何使用D3.js来创建这些图形. 这里会包括前面例子中的SVG基础图形以及如何使用D3.js设置图形的属性. 使用D3.js画一个SVG 的 圆 circ ...
- SVG.js 基础图形绘制整理(二)
一.折线 var draw = SVG('svg1').size(300, 300); //画折线 //使用字符串点 // var polyline=draw.polyline('0,0 100,50 ...
随机推荐
- 4G模块luci的配置及重连脚本
一.4G Luci配置 1. 新建一个wwan接口: 2. 上网方式为dhcp自动获取: 3. 物理设置选择wwan0: 4. 防火墙选择wan 二.重连脚本redial4g LogFile=/roo ...
- java集合之List源码解析
List是java重要的数据结构之一,我们经常接触到的有ArrayList.Vector和LinkedList三种,他们都继承来自java.util.Collection接口,类图如下 接下来,我们对 ...
- 最短路径算法——Dijkstra算法与Floyd算法
转自:https://www.cnblogs.com/smile233/p/8303673.html 最短路径 ①在非网图中,最短路径是指两顶点之间经历的边数最少的路径. AE:1 ADE:2 ...
- 从源代码更新glibc
先看下INSTALL/README: mkdir一个目录专用于build: ../configure --prefix=/usr: make之后make check: 进入single user mo ...
- Java序列化的理解与学习
1.什么是Java序列化 Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命周期不会比 JVM的生命周期更长.但在现实应 ...
- How HipChat Stores And Indexes Billions Of Messages Using ElasticSearch And Redis[转]
This article is from an interview with Zuhaib Siddique, a production engineer at HipChat, makers of ...
- 构建自己的代码库在Code-Google上
多年工作的代码,有不少可以抽象出来作为工具类的.如果每次都把项目的工具类存放到U盘.必然会造成维护的问题.主要是你不可能天天的带u盘 去代码里复制粘贴.去code.google.com建立自己的代码库 ...
- 网页如何检查浏览器是否安装flash插件
如果页面需要加载flash插件并且需要提示用户flash下载,这里有个官方很好的js文件只要引用就可以实现 //v1.7 // Flash Player Version Detection // De ...
- [转]一图读懂JVM架构解析
每个Java开发人员都知道字节码经由JRE(Java运行时环境)执行.但他们或许不知道JRE其实是由Java虚拟机(JVM)实现,JVM分析字节码,解释并执行它.作为开发人员,了解JVM的架构是非常重 ...
- MySQL面试题和答案
Mysql 的存储引擎,myisam和innodb的区别. 答: 1.MyISAM 是非事务的存储引擎,适合用于频繁查询的应用.表锁,不会出现死锁,适合小数据,小并发. 2.innodb是支持事务的存 ...