SVG的几个标签元素
defs
svg允许我们定义以后需要重复使用的图形元素。建议把所有需要再次使用的元素定义在defs元素里面。这样做可以增加svg内容的易读性和可访问性。在defs元素定义的元素不会直接呈现。你可以在你的视口的任意地方利用<use>元素呈现这些元素。
用法:
类别: 容器元素,结构元素
允许的内容物: 任意数量、任意排序的下列元素:动画元素、描述性元素、形状元素、结构化元素、渐变元素、 <a>
, <altGlyphDef>
, <clipPath>
, <colorprofile>
, <cursor>
, <filter>
, <font>
, <fontface>
, <foreignObject>
, <image>
, <marker>
, <mask>
, <pattern>
, <script>
, <style>
, <switch>
, <text>
, <view>
实例:
<svg width="80px" height="30px" viewBox="0 0 80 30"
xmlns="http://www.w3.org/2000/svg"> <defs>
<linearGradient id="Gradient01">
<stop offset="20%" stop-color="#39F" />
<stop offset="90%" stop-color="#F3F" />
</linearGradient>
</defs> <rect x="10" y="10" width="60" height="10"
fill="url(#Gradient01)" />
</svg>
pattern
使用预定义的图形对一个对象进行填充或描边,就要用到pattern元素。pattern元素让预定义图形能够以固定间隔在x轴和y轴上重复(或平铺)从而覆盖要涂色的区域。先使用pattern元素定义图案,然后在给定的图形元素上用属性fill或属性stroke引用用来填充或描边的图案。
用法:
类别: 容器元素
允许的内容物: 任意数量、任意排序的下列元素:动画元素、描述性元素、形状元素、结构化元素、渐变元素、<a>
, <altGlyphDef>
, <clipPath>
, <colorprofile>
, <cursor>
, <filter>
, <font>
, <fontface>
, <foreignObject>
, <image>
, <marker>
, <mask>
, <pattern>
, <script>
, <style>
, <switch>
, <text>
, <view>
marker
marker元素定义了在特定的<path>
元素、<line>
元素、<polyline>
元素或者<polygon>
元素上绘制的箭头或者多边标记图形。
用法:
类别: 容器元素
允许的内容物:任意数量、任意排序的下列元素:动画元素、描述性元素、形状元素、结构化元素、渐变元素、 <a>
, <altGlyphDef>
, <clipPath>
, <colorprofile>
, <cursor>
, <filter>
, <font>
, <fontface>
, <foreignObject>
, <image>
, <marker>
, <mask>
, <pattern>
, <script>
, <style>
, <switch>
, <text>
, <view>
filter
属性filter
定义了由<filter>
元素定义滤镜效果,该滤镜效果将应用到该元素上。
作为一个外观属性,它可以直接用作CSS样式表内部的属性。请阅读css filter
以了解更多信息。
用法:
类别: 外观属性
值: <funciri> | none | inherit
可变性: YES
规范文档: SVG 1.1 (2nd Edition)
<funciri>元素的引用,它定义了将要应用到该元素的滤镜效果。none不对该元素应用任何滤镜效果。
下列元素可以使用filter
属性:图形元素 »、<a>、
<defs>、
<glyph>、
<g>、
<marker>、
<missing-glyph>、
<pattern>、
<svg>、
<switch>、
<symbol>
feColorMatrix
该滤镜基于转换矩阵对颜色进行变换。每一像素的颜色值(一个表示为[红,绿,蓝,透明度] 的矢量) 都经过矩阵乘法 (matrix multiplated) 计算出的新颜色。
用法:
类别: 滤镜元素
允许的内容物: 任意数量、任意排序的下列元素:<animate>
, <set>
<svg width="100%" height="100%" viewBox="0 0 150 360"
preserveAspectRatio="xMidYMid meet"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"> <text x="70" y="50">Reference</text>
<g>
<circle cx="30" cy="30" r="20" fill="blue" fill-opacity="0.5" />
<circle cx="20" cy="50" r="20" fill="green" fill-opacity="0.5" />
<circle cx="40" cy="50" r="20" fill="red" fill-opacity="0.5" />
</g> <text x="70" y="120">matrix</text> <filter id="colorMeMatrix">
<feColorMatrix in="SourceGraphic"
type="matrix"
values="0 0 0 0 0
1 1 1 1 0
0 0 0 0 0
0 0 0 1 0" />
</filter> <g filter="url(#colorMeMatrix)">
<circle cx="30" cy="100" r="20" fill="blue" fill-opacity="0.5" />
<circle cx="20" cy="120" r="20" fill="green" fill-opacity="0.5" />
<circle cx="40" cy="120" r="20" fill="red" fill-opacity="0.5" />
</g> <text x="70" y="190">saturate</text> <filter id="colorMeSaturate">
<feColorMatrix in="SourceGraphic"
type="saturate"
values="0.2" />
</filter> <g filter="url(#colorMeSaturate)">
<circle cx="30" cy="170" r="20" fill="blue" fill-opacity="0.5" />
<circle cx="20" cy="190" r="20" fill="green" fill-opacity="0.5" />
<circle cx="40" cy="190" r="20" fill="red" fill-opacity="0.5" />
</g> <text x="70" y="260">hueRotate</text> <filter id="colorMeHueRotate">
<feColorMatrix in="SourceGraphic"
type="hueRotate"
values="180" />
</filter> <g filter="url(#colorMeHueRotate)">
<circle cx="30" cy="240" r="20" fill="blue" fill-opacity="0.5" />
<circle cx="20" cy="260" r="20" fill="green" fill-opacity="0.5" />
<circle cx="40" cy="260" r="20" fill="red" fill-opacity="0.5" />
</g> <text x="70" y="320">luminanceToAlpha</text> <filter id="colorMeLTA">
<feColorMatrix in="SourceGraphic"
type="luminanceToAlpha" />
</filter> <g filter="url(#colorMeLTA)">
<circle cx="30" cy="310" r="20" fill="blue" fill-opacity="0.5" />
<circle cx="20" cy="330" r="20" fill="green" fill-opacity="0.5" />
<circle cx="40" cy="330" r="20" fill="red" fill-opacity="0.5" />
</g>
</svg>
示例
foOffset
该输入图像作为一个整体,在属性dx
和属性dy
的值指定了它的偏移量。
用法:
类别: 滤镜元素
允许的内容物: 任意数量、任意排序的下列元素:<animate>
, <set>
feMerge
feMerge
滤镜允许同时应用滤镜效果而不是按顺序应用滤镜效果。利用result
存储别的滤镜的输出可以实现这一点,然后在一个 <feMergeNode>
子元素中访问它。
用法:
类别: 滤镜元素
允许的内容物: 任意数量、任意排序的下列元素:<feMergeNode>
feMergeNode
feMergeNode元素拿另一个滤镜的结果,让它的父
<feMerge>
元素处理。
用法:
类别: 无
允许的内容物: 任意数量、任意排序的下列元素:<animate>
, <set>
SVG相关资料网站:https://developer.mozilla.org/en-US/docs/Web/SVG
SVG的几个标签元素的更多相关文章
- 常用HTML标签元素结合及简介
常用HTML标签元素结合及简介 <html></html> 创建一个HTML文档<head></head> 设置文档标题和其它在网页中不显示的信息< ...
- Html页面head标签元素的意义和应用场景
相信在html5之前,很少人会关注html页面上head里标签元素的定义和应用场景,可能记得住的只有"title"."keyword"和"descri ...
- 详解HTML<head> 头标签元素的意义以及使用场景
HTML<head>头部分的标签.元素有很多,涉及到浏览器对网页的渲染,SEO 等等,而各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元素,这就造成了很多差异性.移动互联网时代,he ...
- html标签元素分类
元素分类 html中的标签元素大体分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1>...&l ...
- HTML5 标签元素的一些注意事项
不运行写结束标记的元素(但标签元素): area.base.br.col.command.embed.hr.img.input.keygen.link.meta.param.source.track. ...
- HTML标签元素分类(HTML基础知识)
HTML标签元素分类 一.按照块级元素还是行内元素分类 块级元素(block-level)和行内元素(inline-level,也叫作"内联"元素). a.块级元素(独占一行) 块 ...
- Html常用标签元素
Html常用标签元素 Html常用标签元素 常用HTML标签元素结合及简介 <html></html> 创建一个HTML文档 <head></head> ...
- html dl dt dd标签元素语法结构与使用
dl dt dd认识及dl dt dd使用方法 标签用于定义列表类型标签. dl dt dd目录 dl dt dd介绍 结构语法 dl dt dd案例 dl dt dd总结 一.dl dt dd认识 ...
- CSS选取第n个标签元素
最近做一个项目,碰到这样的需求,需要选取某个元素的倒数第几个标签元素,想让他显示不同的样式 1.first-child first-child表示选择列表中的第一个标签.例如:li:first-chi ...
随机推荐
- go 的基本数据类型和结构
// 变量命名方式当用两个或两个以上的单词命名变量时,可以将除第一个单词以外的所有单词的首字母大写package 命名方式全部小写不加 _ 布尔类型:bool整型:int8.byte.int16.in ...
- JDK线程池框架Executor源码阅读
Executor框架 Executor ExecutorService AbstractExecutorService ThreadPoolExecutor ThreadPoolExecutor继承A ...
- [转帖]Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染
Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染 https://www.kubernetes.org.cn/5951.html 本来想说可以用 official版本的镜像 但是一 ...
- MyBatis代码生成器(maven插件方式和控制台命令运行方式)
代码生成器的作用: 1.生成domain 2.生成mapper接口 3.生成mapper映射文件 准备工作:导入MyBatis所需要的包 第一步:在src/main/resources(必须)目录下创 ...
- jquery根据html()的内容来选择
<ul><li>First</li><li>http://www.hfxskyyj.com/</li></ul> 如上,如何选中 ...
- IDEA 导入 NodeJS 项目部署启动
1.导入项目 2.添加模块 3.配置启动项 4.启动 5.备注 如果不明白,新建一个项目查看配置详情 原文地址:https://blog.csdn.net/tiankongzhichenglyf/ar ...
- 怎样输出Hello World
方法一: 进入python交互模式, 然后使用: print()函数输出 方法二: 新建一个.py文件, 然后写入print()函数, 再使用python命令执行输出:
- DevExtreme学习笔记(一) DataGrid中js分析
1.overviewjs采用 $(function() { $("#gridContainer").dxDataGrid({ dataSource: { store: { type ...
- IClientMessageInspector IDispatchMessageInspector
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- google mock C++单元测试框架
转:google mock C++单元测试框架 2012-03-12 09:33:59 http://blog.chinaunix.net/uid-25748718-id-3129590.html G ...