首页 > 开发 > CSS > 正文

网页设计中谨慎使用CSS sprites

2024-07-11 08:22:23
字体:
来源:转载
供稿:网友

css sprites 是网站速度的优化很重要的一环,但也有其对性能的不利之处。

vladimir vukićević 的博文《to sprite or not to sprite》提到:

css sprites 的最大问题是内存占用。非精确构造的 sprite 图片会占用意想不到的内存空间。以 whit tv 网站为例,这里是一张 sprite 图片,1299x15,000 的png,已经经过很好的压缩,实际下载大小只有26k左右,但是浏览器不会转换压缩的图像数据。当图片下载并解压,将耗费75mb内存(1299 * 15000 * 4)。如果图片没有阿尔法透明,可能会减小到1299 * 15000 * 3,可往往还是牺牲了渲染速度。即便如此,我们占用了55mb内存。这张图片绝大部分是空白的,什么都没有,没有什么有用的内容。仅仅因为这张图片,当浏览器只加载whit 主页时会增加75+mb内存。

mozilla web development blog 在《 use sprites wisely》中总结道:

简而言之,即使是很小的 sprite 图片也有可能吃掉大量的系统内存 -- 每个页面50m甚至100m或者更多。速度虽然至关重要,但要意识到 sprite 及其他 hacks 同样会影响用户体验。

现在再回过头看之前的《yahoo与gmail的css sprites对比》,综合性能方面 gmail 无疑占了上风。当然,这些只是前端层面的优化,从根源上来看,设计师用最少的图片来实现最优的效果才是王道。

正如雅虎女工程师 nicole sullivan 在 velocity 2009 大会演讲 ppt 《the fast and the fabulous》所提到的:

consistent design = clean code = fast site(一致的设计 = 更干净的代码 = 更快的网站)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表