图片加载 背景色块问题

就是CSS的加载和背景图片的加载不是同步的,尤其首次加载的时候,图片是异步的,具有明显的延迟,于是,我们会看到非常丑陋的色块在一瞬间出现了;

页面渲染流程如下,1. CSS加载;2. 对应DOM渲染,背景色出现;3.拉取DOM样式对应背景图片。

图片在异步加载的(图片有北背景颜色):

一开始时候宽 高都为0,加载完之后才现在宽高,所以会看到有的网站在图片出现之后高度蹭蹭的长,这样的的问题:就是图片加载完之后页面需要重新的渲染,影响加载性能。

解决办法:

给存放图片的div一个高度,没有宽度,这样加载时,虽然就背景色,但是宽度为0,所以就不显示背景色,不会出现色块;

但是还有有个问题:

图片在加载时是从上到下加载的:所有还是出现图片的上一部分已加载完毕下部分显示的背景色,解决办法:

在保存图片时:jpg的图片保存选择   连续    png的图片选择 交 错   ok 解决

jpg格式的图片在呈现的时候,有两种方式,一种是自上而下扫描式的,还有一种就是先是全部的模糊图片,然后逐渐清晰(就像GIF格式的交错显示)

一般的图片都是第一中呈现模式,第二种属于渐进式图片:

Chrome + Firefox + IE9浏览器下,渐进式图片加载更快,而且是快很多,至于其他浏览器,与基本式图片的加载一致,至少不会拖后腿。

Scott Gilbertson对渐进式图片有其他的补充:
1. 你 不知道基本式图片内容,除非他完全加载出来;
2. 渐进式图片一开始大小框架就定好,不会像基本式图片一样,由于尺寸未设定而造成回流——提高的渲染性能;
3. 渐进式图片也有不足,就是吃CPU吃内存。

一般而言,大尺寸图片建议使用渐进式JPEG.

渐进式JPEG创建

 photoshop生成
大伙都知道photoshop中有个“存储为web所用格式”,然后,那个连续勾选就是渐进式JPEG图片了:

据说,需要勾选那个转换为sRGB选项,在某些浏览器下,图像设置为CMYK会出现一些问题!

 

 

 

 

 

总结来自:http://www.zhangxinxu.com/wordpress/2013/01/progressive-jpeg-image-and-so-on/

转载于:https://www.cnblogs.com/xiaofenguo/p/6283235.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值