文档章节

CSS Sprite使用简介

不朽灵都
 不朽灵都
发布于 2014/06/05 10:50
字数 467
阅读 44
收藏 0

CSS Sprite 作为减少HTTP请求数量,从而提高网站页面加载速度的一种方式,并被很多网站广泛的应用,比如我们大家所熟知的淘宝。


首先,来看看CSS Sprite所带来的一些问题:

1、CSS Sprite的最大问题是内存使用。比如一张CSS Sprite png图片的大小为600*600,那么浏览器渲染它时需要的内存约为600*600*4=1.4Mb,当然这对于现在的电脑来说,不算一个很大的开销,这里只是为了说明这个问题。

2、CSS Sprite不利于网页缩放。

3、CSS Sprite调用的图片不能被打印,除非在@media中特别添加print声明。

4、如果要修改雪碧中的一个图片,你就要修改整张图片,这会给后续的开发和维护工作带来一些困难。


然而,为了减少HTTP请求数量,优化网站修饰图片是一个行之有效的好方法,相对于CSS Sprite来说,目前也还没有一个更好的能普遍应用的方法去替代它,我们需要做的是合理的使用CSS Sprite。

1、合理利用空间:我们可以用CSS Sprite合并一些大小相同的图片、图标到一个图片文件中,这样可以减少CSS Sprite文件中的空白,让浏览器减少对没用图片的渲染。

2、使用CSS Sprite时,尽量选择不会经常修改的图片,这样可以降低维护成本。

3、ie6 CSS sprites重复加载:如果你使用CSS sprites,那么在ie6下并不能发挥sprites的作用,它还是会每次再重新加载这个图片,解决方法为为ie6添加下面这条js:

<!--[if IE 6]>
<script>
    try {
          document.execCommand("BackgroundImageCache", false, true);
    } catch(e) { }
</script>
<![endif]-->




© 著作权归作者所有

共有 人打赏支持
不朽灵都
粉丝 8
博文 38
码字总数 18073
作品 0
海淀
高级程序员
Google LOGO的CSS Sprite

css-sprite 为纪念美国现代舞舞蹈家玛莎·葛兰姆诞辰,Google Doodle推出了一款极其炫酷的LOGO,整个LOGO使用CSS Sprite技术,利用一个初始图片和一张画满各个动作的拼接图片,实现了动画,而...

bestvist
2017/11/11
0
0
CSS 精灵生成工具--Glue

Glue 是一个简单的命令行工具,用来生成 CSS 精灵 Splites。CSS Splites 是将大量的图片合并成一张大图片一次性加载,然后通过 CSS 来使用具体某个小图片的技术。 特点: Automatic Sprite (...

红薯
2013/07/17
2.7K
0
compass精灵图

css雪碧图又叫css精灵或css sprite,是一种背景图片的拼合技术。使用css雪碧图,能够减少页面的请求数、降低图片占用的字节,以此来达到提升页面访问速度的目的。但是它也有令人诟病的地方,...

Billydotzhang
2016/11/17
9
0
解密CSS Sprites的使用技巧及经典实例

2009-05-18 13:57作者:Oncoding编码营出处:天极网责任编辑:盛晓莹 CSS Sprites并没有一个确定的中文翻译,通常被意译为“CSS图像拼合”或“CSS贴图定位”。CSS Sprites并不是一门新技术,...

晨曦之光
2012/03/09
0
0
移动端使用 rem 单位时 css sprites 定位问题

现在开发移动端 wap 页面,相信大家都会使用强大的 rem 单位去适配各种机型和屏幕;为了减少网络请求数量,提高网页访问性能,一般都会把多个小 icon 合并成一张 sprite 图,然后根据 backgr...

幽涯
06/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

180.mariadb 主从复制

参考:https://blog.csdn.net/chengxuzaza/article/details/62042920 睡觉睡觉,明天写 1.效果 当主库中数据有变化的时候,从库就自动同步 2. 环境要求 至少两台 linux服务器 (教程:https...

Lucky_Me
2分钟前
0
0
erlng file id3v1 id3v1.1

%% ---%% Excerpted from "Programming Erlang",%% published by The Pragmatic Bookshelf.%% Copyrights apply to this code. It may not be used to create training material, %% ......

xueyuse0012
4分钟前
0
0
RabbitMq的安装

环境Centos6.5 32位 JDK 1.7.8 Jdk的卸载 rpm -qa|grep jdk yum –y remove 上边的安装包 JDK的安装 Rpm –ivh jdk安装包 配置环境变量 export JAVA_BIN=/usr/java/jdk1.7.0_80/bin export J......

DemonsI
8分钟前
0
0
http和https协议

HTTPS全称为Hypertext Transfer Protocol over Secure Socket Layer,中文含义为“超文本传输协议在安全加密字层”,简单来说就是加密数据传输,通俗的说就是安全连接。 HTTPS安全超文本传输...

寰宇01
14分钟前
0
0
vue内引入语音播报功能

在vue项目中引入语音播报,使用的科大讯飞语音接入, 具体思路为每次接收到语音信息后存入一个数组,然后监听这个数组,开始冲第一个索引播放,并且同时根据vuex getter 来动态删减数量 给a...

originDu
22分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部