css如何从png里截取小图标

1.背景介绍

在网页设计中,经常需要从图片中获取小图标,用于页面的布局或者作为按钮等交互元素,在这其中,我们需要用到CSS中的Sprite技术。Sprite技术由布景动画中叫做雪碧图,它是将多个小的背景图标合并到一张大图中,并通过CSS类等技术来控制图标的样式和位置。

2.制作小图标雪碧图

2.1 准备素材

首先,我们需要准备好我们网站需要的小图标,将它们裁剪成大小一致的图片,最好是正方形,并用PNG或者GIF格式保存,保持透明背景。

下面提供一些网站,在这些网站上可以免费下载各种图标并用于商业:iconfont,easyicon,iconfinder,fontawesome

2.2 合成雪碧图

将各个小图标整合到一张大图中,使用图像编辑软件比如Photoshop进行处理。首先将各个小图标按需要的顺序排列,然后将它们放在一张大图中,这样做的好处是可以减少网站http请求的次数,提高访问速度。

下面是一个例子:

.sprite{

background-image: url("icons.png");

background-size: 400px 400px;

}

.icon1{

width: 30px;

height: 30px;

background-position: 0 0;

}

.icon2{

width: 30px;

height: 30px;

background-position: -30px 0;

}

其中,.sprite是合成后的雪碧图,在CSS class中可以通过background-position来指定每个小图标的位置。

2.3 使用雪碧图

使用雪碧图需要注意的是,在CSS中,每一个class都对应一个小图标:

.icon1{

width: 30px;

height: 30px;

background-position: 0 0;

}

.icon2{

width: 30px;

height: 30px;

background-position: -30px 0;

}

然后,我们将class应用到HTML中需要的元素上,形成效果:

<span class="icon1"></span>

<span class="icon2"></span>

3. SPRITE技术的优缺点

3.1 优点

使用SPRITE技术可以显著减小HTTP请求,提高页面的加载速度。

图标的轻量化可以减小页面的大小,使得页面更加快速和高效。

同时,使用雪碧图可以提高网站的SEO排名。搜索引擎通常会将页面的加载速度作为排名标准之一,而使用雪碧图可以显著提高加载速度。

3.2 缺点

使用雪碧图需要提前制作好,并且对页面布局造成一定的限制。

使用雪碧图增加了制作过程中的复杂度,需要时间和技术的支持。

4. 总结

Sprite技术在网站设计中应用越来越广泛,利用它有助于提高网站的质量和效率,减少HTTP请求次数。

用CSS从PNG里截取小图标需要按照一定的规则设计和制作雪碧图,然后使用CSS类将它们运用到网页中。

最后提供一些制作雪碧图的网站,方便大家选择或者参考:subtlepatterns,icomoon,spritecow