欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

HTML5+CSS3教程:使用SVG提高处理网页图片效率

程序员文章站 2024-03-20 09:20:16
...

HTML5+CSS3教程:使用SVG提高处理网页图片效率
SVG全称是Scalable Vector Graphics,如果你使用过adobe Illustrator的话,相信你对这种适量格式的图片并不陌生!

为什么要使用SVG?
1、文件非常小
2、无损缩放图片尺寸
3、在Retina显示屏上效果超级棒
4、能够控制图片样式设计,例如:互动和过滤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"">

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

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

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

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

css代码:

.logo {
  display:
  text-indent:
  width:
  height:
  background:
  background-size:
}

使用行内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:
    ...
}

值得注意的是SVG中我们使用fill而并非background来定义背景色。
可以使用filter来控制模糊度,代码如下:

.logo:hover{
    fill:
    filter:
}

总结:SVG可以称得上是一种比较强大的图片格式,可以提升你处理图片的效率,其图形展示方式要比JPG和PNG更加灵活和强大。

相关标签: 网页设计