快速业务通道

使用 CSS sprite 的好处和坏处

作者 佚名技术 来源 CSS技术 浏览 发布时间 2012-02-24
站,也会降低 HTML 中 title 和 alt 的潜在益处。

因此,CSS sprite 本身没错,而且也不会引发可访问性问题(事实上,正确得使用会提高可访问性)。但是不分对错得过度使用 sprite 会阻碍具有可访问性和生产率方面的网页建设进程。

HTTP 请求数又如何?

许多人会据理力争,改善网站性能最重要的部分就是减少 HTTP 请求数。也要知道一项研究表明一个网站日常的访问者中 40-60% 比例都是没有浏览器缓存的。这是否足以说明应该在所有情况下使用大型 sprites 呢?或许是这样。尤其是考虑到用户的首次来访对一个网站的重要性。

Firefox 的 YSlow 插件显示 HTTP 请求数

以往的浏览器一般只允许 2 个并发 HTTP 连接,3.0 版本以来的 Firefox 和 IE8 默认允许 6 个并发 HTTP 连接。这意味着每台服务器有 6 个并发连接。引用 Steve Souders 的话:

“明白这是服务器的基础是很重要的。使用多个域名,如 1.mydomain.com, 2.mydomain.com, 3.mydomain.com, 等等,使开发人员可以完全利用服务器连接数。在所有域名是同一 IP 地址的 CNAME 时依然有效。”

因此,或许在按钮状态之外使用 CSS sprites 也是有益的,在未来,随着网络连接速度的加快和新版浏览器的性能提升,使用大型 sprites 所带来的好处将会变得不值一提。

那些 Sprites 生成器呢?

另一个喜爱大型 sprite 的理由是可以利用一些 sprite 生成器来简单得生成 sprite。对此类工具的详细讨论和评测不在本文讨论范围。但是从作者对此类工具的研究来看,帮助非常有限,并且维护这些 sprites 一样需要可观的工作量,这也是需要和收益权衡的。

有些工具,例如来自 Fondue 项目的这个,提供输出 CSS 选项。Steve Souders’ 的工具 SpriteMe 是另一个提供 CSS 编码选项的。SpriteMe 会把现有的网站背景图片转换成单张 sprite 图片(我之前提到的“大型” sprite)并提供下载以供编码入页面之中。然而这些工具只是有助于创建 sprite,并不能在维护方面提供多少帮助。Souder 的工具貌似对重新设计或布局的网站无效,而且只对那些现有的没有使用 sprite 方法的网站有用。

可以改进现有的工具,而且未来也会有新的工具出现。但是,鉴于以上提到的这些缺点,是否还存在这种可能,就是开发人员依然把精力集中在有限的所得上?

关注多个性能提升点

上面提到,HTTP 请求数是提升网站性能需要考虑的一个非常重要的因素。但是有别的方法可以减少连接数,包括合并脚本和样式表,使用远

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号