`

HTML5/CSS3系列教程:使用SVG图片

阅读更多

日期:2013-3-25  来源:GBin1.com

HTML5/CSS3系列教程:使用SVG图片

在我们开始使用SVG前,让我们先了解一下 SVG,并且解释一下为什么使用SVG

SVG全称是Scalable Vector Graphics,如果你使用过adobe Illustrator的话,相信你对这种适量格式的图片并不陌生!

为什么使用SVG?

  • 文件非常小
  • 能够无损失的缩放尺寸
  • 在Retina显示屏上效果超棒
  • 能够控制图片样式设计,例如互动和过滤filter

浏览器支持

  • IE8及其更低版本不支持
  • Android 2.3及其更低版本不支持
  • 其它浏览器都支持

如果你需要支持这些版本的浏览器的话,你可以使用Modernizr,如下:

if (!Modernizr.svg) {
  $(".gblogo img").attr("src", "images/logo.png");
}

或者使用如下更简单的代码:

<img src="gblogo.svg" onerror="this.onerror=null; this.src="gblogo.png"">

SVG文件作为一般图片使用

你可以作为图片来直接使用,如下:

<img src="logo.svg" alt="gbtags logo">

你可以像控制JPG或者PNG格式文件一样,控制图片的大小,如下:

在线调试:http://www.gbtags.com/gb/debug/77d50934-592b-4b8a-b591-e7068c7e38ef.htm

SVG文件作为背景图片使用

我们也可以使用SVG图片作为背景图片使用,如下:

<a href="http://www.gbtags.com" class="logo">
  gbtags.com
</a>

CSS:

.logo {
  display: block;
  text-indent: -9999px;
  width: 100px;
  height: 100px;
  background: url(gblogo.svg);
  background-size: 100px 82px;
}

使用行内SVG

你可以直接将SVG代码拷贝到body中,将会看到图片,如下:

<body>    
<!-- 将SVG代码拷贝到此处,将会显示图片  --> 
</body>

使用CSS控制SVG

你可以使用CSS来控制SVG文件,下面代码将控制鼠标悬浮时的图片背景颜色:

<g class="logo" transform="translate(0.000000,500.000000) scale(0.100000,-0.100000)"
fill="#000000" stroke="none">

以上代码定义了一个logo的class,然后我们可以在CSS定义如下:

.logo:hover{
	fill: #F08000;
	...
}

注意SVG中我们使用fill而不是background来定义背景色。

甚至可以使用filter来控制模糊度,如下:

.logo:hover{
	fill: #F08000;
	filter: url(#logoFilter);
}

当你使用鼠标hover图片时,会有如下效果。

在线调试:http://www.gbtags.com/gb/debug/acfcf33e-db11-4b71-bdcb-d38e99fdcef3.htm

 SVG相关工具

总结

SVG是一个非常强大的图片格式,可以帮助你高效的处理图片,拥有比JPG或者PNG更灵活强大的图形展示方式,相信如果加以时日,必定成为最流行的图片处理方式!

via 极客标签

 

来源:HTML5/CSS3系列教程:使用SVG图片

0
9
分享到:
评论

相关推荐

    html5和css3实例教程pdf及源代码

    本“HTML5和CSS3实例教程”将通过一系列实践案例,教你如何结合使用这些特性,创建功能强大、视觉效果出众的网页。PDF电子版提供了详细的理论讲解,源代码则可以直接运行查看效果,帮助你从实践中学习,提升技能。...

    疯狂HTML 5CSS 3JavaScript讲义光盘代码

    在"疯狂HTML 5CSS 3JavaScript讲义光盘代码"中,可能包含了一系列教程章节,涵盖了这些技术的基础到进阶内容,比如: 1. HTML5的新元素和API:讲解如何使用新的语义元素,以及如何利用Canvas、Web Storage、Web ...

    HTML5+CSS3 Web前端设计基础教程-PPT.rar

    在这个PPT教程中,你可能会学到如何使用HTML5的新特性,如 Semantic Elements(语义化元素)来提高网页可读性和可访问性,Canvas和SVG(可缩放矢量图形)用于创建图形和动画,以及Web Storage和Web Workers来优化...

    HTML5与CSS3web前端开发技术习题答案.pdf

    ### HTML5与CSS3 Web前端开发技术习题答案解析 #### 第一章 ##### 1.1 简答题 **(1)HTML5与HTML4比较,主要解决了哪些问题?** HTML5作为HTML4的升级版,在Web前端开发方面解决了一系列关键问题,主要体现在...

    Android/CSS/HTML5/JAVA帮助文档下载

    综上所述,这个压缩包提供的是一系列关键IT技术的学习资料,涵盖了从后端开发(Java)、移动开发(Android)、前端开发(HTML5和CSS3)的各个方面,对想要深入学习或工作的IT专业人士来说是一份宝贵的资源。...

    最全的SVG教程

    5. **SVG与HTML的整合**:在HTML中嵌入SVG,使用内联SVG或img标签,以及object和iframe元素的使用场景。 6. **SVG优化技巧**:如何减少文件大小,提高性能,包括合并路径、删除不必要的属性和元素等。 7. **SVG在...

    HTML5及CSS3web前端开发技术习题答案解析.pdf

    ### HTML5及CSS3 Web前端开发技术习题答案解析 #### 1. HTML5与HTML4的主要区别及其解决的问题 HTML5与HTML4相比,在Web前端开发领域解决了多个关键问题,主要包括: - **浏览器间的兼容性问题**:早期不同浏览器...

    css3系列教程(嵌入字体网络字体).rar

    这个“CSS3系列教程(嵌入字体网络字体).rar”压缩包文件正是针对这一主题提供的一份详细教程,旨在帮助网页制作者创造出更具个性和视觉冲击力的头部效果,同时避免因受限于系统默认字体而影响设计美感。 一、CSS3...

    CSS3 SVG五星评分表情特效.zip

    本教程将详细介绍如何使用CSS3和SVG技术创建一个动态的五星评分表情特效。 首先,SVG(Scalable Vector Graphics)是一种基于XML的矢量图形语言,它允许我们在网页上绘制清晰、可缩放的图形。SVG的优点在于无论放大...

    CSS3+SVG实现添加购物车按钮动画特效.zip

    总的来说,"CSS3+SVG实现添加购物车按钮动画特效.zip" 的内容可能包括如何使用CSS3的动画和过渡特性,以及如何结合SVG来创建交互式的图形动画。这对于想要提升网站视觉效果和用户体验的开发者来说,是非常有价值的...

    svg 实例 和 教程

    3. **样式和属性**:SVG图形可以通过内联样式或CSS进行样式化。包括填充色(fill)、描边色(stroke)、描边宽度(stroke-width)、描边样式(stroke-dasharray)等。此外,还有透明度(opacity)、变换(transform...

    css3 svg逼真水滴特效.zip

    5. 二次修改:为了适应不同网页的需求,你可以修改SVG的形状参数、CSS3的样式和动画参数,或者使用jQuery添加更多的交互逻辑。比如,可以更改水滴的数量、大小、颜色,或者让水滴随机出现和消失,增加动态感。 总的...

    SVG经典教程2 (SVG从入门到精通)

    本教程“SVG经典教程2”是SVG学习的初级教程,旨在帮助初学者深入理解并掌握SVG的核心概念和实用技巧。 ### 1. SVG的基本概念 SVG图像由一系列几何形状组成,如线条、矩形、圆形、曲线等,这些形状在放大或缩小时仍...

    疯狂HTML 5CSS 3JavaScript讲义源码

    文件列表中的“疯狂HTML 5CSS 3JavaScript讲义”很可能包含一系列章节或教程,详细讲解了这三个技术的使用方法和最佳实践。读者可以从中学习到如何创建有效的HTML5结构,编写优雅的CSS3样式,以及实现功能丰富的...

    HTML5+CSS3+JavaScript Web前端开发案例教程(慕课版)-源码.rar

    这个教程的源码部分很可能包含了一系列实例,覆盖了HTML5的新特性、CSS3的样式设计和JavaScript的应用场景。通过这些实例,学习者能够了解到如何创建表单、处理事件、使用API以及实现动态效果。对于初学者,这是一个...

    svg转换成Android 可用的vector

    2. **路径数据转换**:SVG的路径数据由一系列命令和参数组成,如M(移动到)、L(直线到)、C(曲线到)等,这些需要转换为Android的PathData节点,以`M`, `L`, `C`等关键字表示。 3. **颜色和渐变处理**:SVG可能...

    html5+css3手册_干净

    HTML5和CSS3是现代网页开发的两大核心技术,它们为创建功能丰富、视觉效果出色的网页提供了强大的工具。W3School是知名的在线学习平台,提供了一系列的教程和参考手册,帮助开发者学习和掌握这些技术。 HTML5是超...

    CSS3 SVG叶子虚线响应式布局代码

    5. **步骤流程图的启发**:这个布局设计灵感来源于步骤流程图,通过调整SVG元素的排列和CSS3的动画效果,可以轻松地将其转变为一个展示流程或步骤的交互式图表,这对于教学、教程或产品说明等场景非常实用。...

    svg(SVG)

    3. **SVG变换**:使用`transform`属性,可以实现平移(translate)、旋转(rotate)、缩放(scale)、倾斜(skew)等图形变换。 4. **SVG文本**:通过`&lt;text&gt;`元素添加文本,并可以控制字体、大小、对齐方式和方向...

    HTML5系列教程

    HTML5是Web开发领域的一次重大革新,它在2014年被...通过这个HTML5系列教程,你将系统地学习HTML5的各种特性,并能将其应用到实际项目中,无论是创建响应式网站还是开发原生感的移动应用,HTML5都是不可或缺的工具。

Global site tag (gtag.js) - Google Analytics