网页设计师表达创意和想法:正确的图片格式(3)
3、思考与实践
什么样的设计更适合web页面?
慎用较“重”的视觉设计元素
Web2.0时代网页设计的一大趋势就是越来越“轻”。除了对那些高光和圆角效果的审美疲劳之外,设计师们也开始意识到好的设计应该是内容与形式的完美结合,而非形式的堆砌。所以设计师在应用那些较“重”的视觉效果时,一定要想清楚这样做的目的和意义,以及是否与产品的特点和受众的气质相契合。
“轻量“设计一个比较典型的例子就是国内某知名网站,几乎没有采用任何需要图片的视觉元素,而是通过简单的CSS样式去实现,这样不仅能够突出内容,更能提升页面的访问速度。所以我十分强烈的建议视觉设计师也掌握一定的html和css知识(尤其是CSS3实现了很多过去需要图片才能实现的效果,例如圆角和渐变),这样在做设计的时候能够全面的去考虑产品效果。
下面这个电子商务网站则采用过多无意义的视觉元素堆砌,不仅没有实现很好的设计效果,反而由于需要太多的图片元素而影响了页面的性能。
如果由于产品需要在设计中不得不使用较”重“的视觉元素,我们也可以根据图片格式的特点选择适当的表现形式以达到更好的效果。
例如在下面这个例子中,第一个Banner应用了更适合PNG格式的设计风格(较多纯色和简单渐变的应用)不仅能达到热烈、突出的视觉效果,在保证图片质量的同时也更好的压缩了文件大小;而第二个Banner由于应用了过于复杂的渐变色和强烈对比,并且在局部区域采用太多的高光和阴影效果,导致图片的色彩层次过多,不论采用PNG还是JPG格式保存都无法实现图像质量和文件大小的最优化。
当然举这个例子并不是要设计师在做设计的时候过分考虑页面性能问题,而是要清楚不同设计形式的效果和实现成本,在设计过程中多问自己为什么要这样做?
内容和形式的分离
对于一些比较强调视觉效果的特殊产品,比如活动推广页面或Mini Site。我们也可以利用图片格式和一些前端知识对设计进行优化,比较常用的一种设计方法就是内容和形式的分离。
如下面一些国外比较流行的设计风格,以及前面提到的微博网站,都是通过大幅的背景图去进行意境的传达和气氛的渲染。这样做的一个好处就是能把需要用到图片的视觉元素进行集中的压缩优化,同时又不会由于加载太慢而影响用户的访问速度(前端实现时一般会用相近的背景色先进行填充,然后在逐步显示背景图)。
个人认为好的视觉设计最重要是意境传达和气氛渲染,使用高光、阴影等滤镜效果的目的也仅仅是为了达到质感上的统一从而更好的去传达意境和渲染气氛,所以切忌为了质感而质感。即便是为了体现设计品质也不一定非要使用炫丽的滤镜,相较而言优美的布局和精巧的结构才是体现品质的关键!
通过较小的视觉牺牲换取较大的性能提升
有时候为了提升页面的加载速度达到更好的用户体验,不得不对设计进行优化。这个时候利用我们对图片格式知识掌握就可以更有目的性的去进行优化。
例如下图是淘宝“双十一”大促活动的一个页头设计,由于页面访问量非常大并且要使用较多的商品图片,不得不对页头设计进行优化以提升性能。这个时候我们就可以去掉一些不太重要的高光、渐变和阴影效果,从而大大降低文件大小。
我们还可以做些什么?
Sprite图片二次优化
由于目前国内很多互联网公司没有页面重构师这一职位,所以页面切图和静态代码实现基本都是前端工程师去完成。为提高页面性能目前普遍采用的实现方式是将与页面结构相关的需要用到图片的视觉元素集中在一个PNG图片上,然后通过CSS样式将其应用到页面中,我们称这个图片为Sprite图片。由于这个图片上经常要集中较多的视觉元素,在用PNG格式存储时难免会产生失真而影响图片质量。这个时候就需要视觉设计师帮助前端开发工程师对Sprite图片进行优化,这样做的好处是不仅能提升图片质量,还能达到减小文件大小的效果,可谓一举两得。
下图是一个优化前的Sprite图片,由于视觉元素过多PNG8无法真实保存所有的颜色信息,于是便会产生颜色的缺失和杂色的产生(如局部放大图所示)。
在前端工程师完成页面的静态代码之后,视觉设计师可以将定位好的Sprite图片进行像素级的优化,去掉不必要的杂色,并且用已存在的索引色对缺失的地方进行补充,这样不仅能压缩文件大小,还能提升设计品质。
Sprite图片的优化方式有很多种,比如通过索引色排序进行颜色的删减和替换,或是直接通过像素描绘进行优化。设计师可以根据具体的场景进行选择和处理。
以上设计和优化的方法只是我在工作中一些经验的积累和总结,个人感觉每一个点展开来都有很多值得研究和讨论的地方,限于篇幅有限不能继续深入。关于图片优化的高级技巧有两篇比较经典的文章推荐给大家:Clever PNG Optimization Techniques、Clever JPEG Optimization Techniques。