精灵VS图像切片

我没有与精灵的方法将图像(http://www.alistapart.com/articles/sprites)很多经验。 任何人都愿意分享的精灵与老派片一些优点/缺点?

--------------解决方案-------------

优点:

  • 它的服务器来服务于一个大的图像比许多小的就容易得多。
  • 它的(略)更快用于web浏览器加载这样的图像。
  • 浏览器只加载图像,因为它们需要他们 - 如果你是在一个过渡使用多个图像,浏览器将“暂停”你第一次翻身的元素。 这可以使用精灵来解决,因为只有一个图像加载。

缺点:

  • 这是一种痛苦代码(远远超过使用多个图像至少)

精灵的主要优点是,浏览器必须请求更少的影像从网络服务器。 降低的HTTP请求的数量,并使其能够更有效地压缩了设计的零件。 这两点也代表切片图像的缺点。

在这里你可以看到一些很好的例子精灵如何提高网页加载速度:

http://css-tricks.com/css-sprites/

精灵

优点:

  • 少HTTP连接到服务器
  • 宽带更快的加载

缺点:

  • 无封装:如果你想改变一个图像,你必须改变精灵
  • 因此很难在CSS中设置各个图像不用工具
  • 不要降低:如果浏览器不支持CSS,你有麻烦了

使用CSS精灵的一个经常被忽视的缺点是内存占用:

http://blog.vlad1.com/2009/06/22/to-sprite-or-not-to-sprite/

当精灵得到加载到浏览器中,它们存储解压缩。 因此,一个26 KB的文件会占用75 MB的RAM。 您应注意使用精灵具有非常大的尺寸。

还有的在浏览器中使用CSS支持不好会发生什么的问题(如:移动浏览器)。 精灵可能最终完全破碎。

考虑使用一个CSS雪碧发生器(我们使用SmartSprites)。 这样,你可以做切片在本地,并有你的构建过程中产生spritemap。 这是两全​​其美。

也就是SmartSprites是不适合你,肯定有其他人,但我喜欢它,因为它减少工作量了前面,期间的变化。

缺点 - 对旧的浏览器/也许不会对他们的工作有悬停效果(opera6)慢 - (!组能有充分的),如果不正确使用可能会变得非常/太庞大了 - 乏味的工作对它们进行设置

优点 - 更少的字节转移,因为一个大的图像较小,则所有单个图像组合(一个头/颜色表) - 更少的HTTP请求

CSS精灵:

优点:

  • 在不支持的浏览器优雅降级(文字可以在不允许的背景图片的链接显示)
  • 减少HTTP请求
  • 每张图片都有一个单独的开销喜欢的颜色表,使图像切片将具有比CSS精灵更多的开销

缺点:

  • 姿势如果图像在浏览器关闭的一个问题(极少数情况下,虽然)

图像切片:

优点:

  • 用户感知自装一块一块更快的负荷。
  • 加载像需求当用户将他的鼠标在图像上

缺点:

  • 该网页可能在客户端的大尺寸甚至认为它可能不是在服务器端的情况。

精灵的主要缺点是它使得难以阅读/维护/修改CSS。 它可以是难以记住精灵中的准确象素偏移。

使用精灵的优点:因为它使用1张图片全部,它需要的HTTP服务器上的负荷较小。

缺点: - 硬编码。 你必须知道的坐标内的精灵各自的图像,因此您可以正确显示。 一旦你改变图像的大小,则需要调整所有... - 大图可以创造长期等待页面显示。 而使用图像,用户与互联网连接速度较慢可以看到一个接一个。

最佳实践。 使用它,例如翻转图像。

我更喜欢将不必在一个文件中的所有图像分组关键词(正常,悬停,选择页面,选择页面的父页面)的中间地带。 为了使这些,你形象片像普通的Photoshop或Illustrator,打开文件,并用一个快捷键组合它们。 我写的,结合图像到CSS精灵Photoshop的脚本。 您将有多个HTTP连接,但不会对悬停负载延迟。

分类:HTML 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.620 (s). 10 q(s)