【发布时间】:2011-03-06 20:43:48
【问题描述】:
我在网站的模板、xhtml 和 CSS 中使用了几个 PNG 图像(通过 CSS)。
我已将 png 尽可能小并进行了优化,但在任何浏览器(Safari、Firefox、IE)中对其进行测试时,渲染至少需要 2 秒。
很遗憾,我不能在这里分享代码,但我可以说我已经删除了所有的 javascript,而且我的 html 代码相当小(大约 250 行,没有表格)并且可以正确验证。
我想知道 PNG 是否是“有罪”的部分,因为这是我第一个几乎完全使用 png(而不是 gifs + jpegs)完成的网站(我不支持 IE6,所以不需要 hack)。
【问题讨论】:
-
我会先检查几件事:在不同的浏览器中尝试并检查您是否看到相同的行为。检查服务器是否以不同的方式呈现 PNG,例如在不需要的时候进行 gzip 压缩。尝试将
PNG直接放在图片标签中,而不是通过 CSS 背景加载。 -
你加载了多少个 PNG?你使用 CSS 精灵吗?
-
是的,我正在使用 CSS sprites,但它也可以优化,即便如此,我通过 CSS 使用了大约 11 个 png,这些文件占用不到 40Kb;我已经在几个浏览器中测试过了,我忘了说这是一个简单的测试,没有服务器,只是测试一个 html。
-
编辑:看来它确实加载了超过 11 个 png :( 它平均加载了 44 个图像(CSS 和 html 上的混合),它可能是我的电脑需要退休,但至少我对 PNG 并没有自己放慢速度,而是(可能)因为请求数量变慢而感到“清醒”,谢谢。