图片规范
图片格式
常见的图片格式有 GIF
、PNG8
、PNG24
、JPEG
、WEBP
,根据图片格式的特性和场景需要选取适合的图片格式。
内容图: 多以商品图等照片类图片形式存在,颜色较为丰富,文件体积较大
# 优先考虑 JPEG 格式,条件允许的话优先考虑 WebP 格式 # 尽量不使用PNG格式,PNG8 色位太低,PNG24 压缩率低,文件体积大
背景图: 多为图标等颜色比较简单、文件体积不大、起修饰作用的图片
# PNG 与 GIF 格式,优先考虑使用 PNG 格式,PNG格式允许更多的颜色并提供更好的压缩率 # 图像颜色比较简单的,如纯色块线条图标,优先考虑使用 PNG8 格式,避免不使用 JPEG 格式 # 图像颜色丰富而且图片文件不太大的(40KB 以下)或有半透明效果的优先考虑 PNG24 格式 # 图像颜色丰富而且文件比较大的(40KB - 200KB)优先考虑 JPEG 格式 # 条件允许的,优先考虑 WebP 代替 PNG 和 JPEG 格式
图片大小
中国普通家庭的宽带基本能达到 8Mbps
,实际速率大约为 500—900KB/s
,全国 3G/4G
用户占有比超过了 50%
,为了保证图片能更好地加载展示给用户看,(图片的大小约定标准随全国网速的改变而改变)团队约定:
PC
平台单张的图片的大小不应大于200KB
移动平台单张的图片的大小不应大于
100KB
图片质量
上线的图片都应该经过压缩处理,压缩后的图片不应该出现肉眼可感知的失真区域
60
质量的JPEG
格式图片与质量大于60
的相比,肉眼已看不出明显的区别,因此保存JPEG
图的时候,质量一般控制在60
,若保真度要求高的图片可适量提高到80
,图片大小控制在200KB
以内
图片引入
普通引入
::: code-group
<!-- HTML引入图片 --> <!-- HTML 中图片引入不需添加 width、height 属性,alt 属性应该写上 --> <img src="" alt="" >
.jdc { background-image: url(icon.png); }
:::
CSS Sprites
VSData URIs
CSS Sprites
特点:减少请求数
加速图片的显示
维护更新成本大
更多的内存消耗,特别是大体积或有过多空白的
Sprites
图图片渗漏,相邻的不需展示的图片有可能出现在展示元素中,特别是在高清设备移动设备上
Data URIs
(base64
编码):减少请求数
转换文件体积大,大约比原始的二进制大
33%
IE6 / IE7
不支持图片显示相对较慢,需要更多的
CPU
消耗
# CSS Sprites建议 # 1. 适合使用频率高更新频率低的小图标 # 2. 尽量不留太多的空白 # 3. 体积较大的图片不合并 # 4. 确保要合并的小图坐标数值和合并后的 Sprites 图尺寸均为偶数 # Data URIs(base64编码)建议: # 1. 适合更新频率高的小图片,如某些具备自定义功能的标题icon等 # 2. 转换成 Base64 编码的图片应小于 2KB # 3. 移动端不使用 Base64 编码 # 4. 要兼容 IE6/IE7 的不使用
参考
Last updated
Was this helpful?