首页 > 代码库 > HTML5/CSS3教程:使用SVG图片
HTML5/CSS3教程:使用SVG图片
在我们开始使用SVG前,让我们先了解一下 SVG,并且解释一下为什么使用SVG。
SVG全称是Scalable Vector Graphics,如果你使用过adobe Illustrator的话,相信你对这种适量格式的图片并不陌生!
为什么使用SVG?
文件非常小
能够无损失的缩放尺寸
在Retina显示屏上效果超棒
能够控制图片样式设计,例如互动和过滤filter
浏览器支持
IE8及其更低版本不支持
Android 2.3及其更低版本不支持.精心开发5年的UI前端框架!
其它浏览器都支持
如果你需要支持这些版本的浏览器的话,你可以使用Modernizr,如下:
if (!Modernizr.svg) { $(".gblogo img").attr("src", "images/logo.png"); }
或者使用如下更简单的代码:
<img src=http://www.mamicode.com/"gblogo.svg" one rror="this.onerror=null; this.src="gblogo.png"">
SVG文件作为一般图片使用
你可以作为图片来直接使用,如下:
<img src=http://www.mamicode.com/"logo.svg" alt="gbtags logo">
SVG文件作为背景图片使用
我们也可以使用SVG图片作为背景图片使用,如下: 精心开发5年的UI前端框架!
<a href=http://www.mamicode.com/"http://www.csswang.com" class="logo">>css代码:
<span style=" border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><strong>.logo { display: block; text-indent: -9999px; width: 100px; height: 100px; background: url(gblogo.svg); background-size: 100px 82px; }</strong></span>
}
使用行内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来定义背景色。精心开发5年的UI前端框架!
甚至可以使用filter来控制模糊度,如下:
.logo:hover{ fill: #F08000; filter: url(#logoFilter); }当你使用鼠标hover图片时,会有如下效果。精心开发5年的UI前端框架!
总结
SVG是一个非常强大的图片格式,可以帮助你高效的处理图片,拥有比JPG或者PNG更灵活强大的图形展示方式,相信如果加以时日,必定成为最流行的图片处理方式!
HTML5/CSS3教程:使用SVG图片
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。