说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

复杂产品的响应式设计【流程篇】

HTML文档下载 WORD文档下载 PDF文档下载
一淘设计团队在去年一淘首页改版时初步尝试了响应式,最近在一淘“玩客”项目中有了更加深入地应用,第一次在复杂产品中实现了全站响应式。因此在系列文章中总结了他们所遇到的坑,以及学到的经验,

响应式网页不像传统网页只需考虑一种状态,不是交付一套设计稿就完事儿了,它给设计、前端和开发团队之间的协作模式带来新的挑战。在一个复杂产品全面响应式的项目里,交互每个阶段该产出什么?交互与视觉如何协作?前端何时介入?哪些事情让后端开发来做更合理?经历“玩客”第一版后,我们得到了一些答案。

响应式设计之所以叫响应式“设计”而不叫响应式“技术”,是因为它是一项设计先行的工作。需要设计先明确好响应方式再实现出来,不能出一套设计稿后等着前端看情况把它变成响应式网页。所以整个流程最初从交互阶段开始,分成6个主要步骤,视觉、前端、开发等角色根据情况尽早介入。


Step1:信息架构,确定内容策略。

根据产品定位和用户分析,交互设计师确定站点信息架构。(信息架构呈现方式有很多种,这不是本文重点,不详述)。

这时候可以明确这个产品有多少页面,每个页面包含多少内容,内容优先级是什么。很多产品包含N多页面,每个页面一一考虑响应式设计容易造成混乱且成本巨大。所以下一步重要工作是分析页面类型把页面归类。以玩客为例,可以把10多个页面分成三类:列表类页面、详情类页面、操作类页面。

Step2:移动框架

先说下为什么第二步要先设计移动框架。移动优先是移动互联网浪潮下应运而生的理念,由 Luke Wroblewski最早提出。移动优先并不是指移动更重要,响应式设计理念里设备是同等重要的。它是指优先设计手机端的体验,有三个原因:

  1. 手机让设计专注,强迫你想清楚什么信息是最重要的。因为手机屏幕小,每屏呈现的内容少;触屏手机使用手指操作而非鼠标这样的精密设备来操作,对操作有更高要求;手机使用场景更加丰富,很多场景用户是缺乏耐心的,比如当你排队看电影正在找手机上的电子票,马上排到你了翻半天却迟迟找不到那张票这是多么令人崩溃的事情。
  2. 手机许多特性让设计更强大。手机上的语音输入、地理位置定位、丰富的手势操作、越来越多传感器,手机交互比PC拥有更多可能性。从手机开始设计,让你更早地思考如何发挥这些特性。
  3. 手机正在迅猛增长。手机即将超越PC,成为最主流的上网方式,这个趋势是不可逆的。

从移动开始做设计对习惯了PC环境的设计师可能是一种挑战,思考方式工作习惯都被迫做出改变。但这种改变必须去适应,因为用户习惯在改变。

回正题,上一步已经把页面归类并确定每个页面内容优先级,现在接着分析每种类型页面的导航、主体内容等框架结构,最终得出一份框架结构表。从玩客框架结构看出,全局导航是所有页面公共的,局部导航只有列表类页面才有,详情类页面都有一个“页面主人”信息,而关联导航不是每个页面都有。

接着开始设计手机端“超细长页面”的框架(因为手机上一般是单列布局,所以页面又细又长)。这一步开始把信息结构设计成最粗放的框架,可以在白板或纸面上完成。要实现的关键目标是:把这个页面最需要呈现给用户的内容放在最重要的位置,要符合手机上的阅读和操作习惯,尽量利用手机设备的特性。

Step3:响应式框架

根据手机端的框架拓展出平板和PC端框架。这是复杂产品实现响应式设计的关键步骤,它是让众多页面有条理地响应起来的基础。第一件事情是确定响应式模式,即从手机到平板到PC,导航怎么变化,页面布局用哪种响应方式,根据内容优先级如何调整模块顺序,等等。玩客在PC端以三栏布局为主,左边栏作为局部导航或者主人信息区,中间栏始终是页面主体信息,当页面需要关联导航时统一放在右边栏。


到现在这个阶段所有页面的响应式开始有规则可循,下一步工作就是继续细化规则,把框架精确到具体尺寸。具体说来就是制定流体栅格系统。流体栅格系统是基于百分比的栅格布局工具,具体的制定方法会在另外一个篇章【知识篇】中详细介绍。


响应式是一种设计理念与前端技术紧密结合的新兴形态,鼓励尽早进行跨职能沟通协作。交互确定响应式框架和栅格系统后,其他角色就可以同步开展工作了。前端开始介入完成栅格和框架搭建,产出页面基础框架。视觉同步开始探索和定义视觉风格探索,制定视觉框架,产出风格关键词、产品配色方案。整个过程需要几个角色不断讨论确定。

Step4:模块设计

按照移动优先的原则应该先进行移动端的模块细节设计,不过我们选择了从PC端开始设计细节。因为PC端开发能够充分暴露业务复杂度,项目团队的设计、开发、测试在PC环境下拥有成熟的工具和流程,从PC开始让开发过程更顺畅。所以个人认为移动优先是确定内容策略时应该遵循的理念,细节设计和开发过程是否要移动优先,取决于产品定位和项目团队情况。

响应式框架确定了页面结构和响应模式,模块设计这个过程开始完善所有信息排版和交互形式,这是交互设计师最熟练也是最耗时的工作。这个过程与传统流程没太大区别,只是心里要不断提醒自己,这个模块不是只为这个设备设计,它在其它设备下会出问题吗?

交互确定页面模块细节后可以抽取出产品用到的控件、组件和公共模块,现在视觉和前端开始做一件有别于传统流程的事情。视觉根据前期定义的风格设计控组件和公共模块的视觉效果,把它们拼成一个模拟的页面,我们称之为风格拼贴稿。前端再把风格拼贴稿里的控组件和公共模块实现出来,统一维护一套组件规范代码。

传统的做法往往是页面视觉定稿后设计师开始整理视觉规范标注给前端。风格拼贴稿是将这个工作尽可能提前,并变成一个设计协作利器。它的好处是:

  1. 一个页面的视觉效果实际上是由一堆控组件和公共模块组成,用真实的控组件和公共模块拼贴的模拟页面已经可以呈现出产品的视觉风格。把一个产品10多个页面的视觉稿全部完成定稿是非常费时费力的事情,产出一份风格拼贴稿则轻松得多。所以它是一个高效的设计工具。
  2. 复杂产品总是涉及多个设计师和前端并行工作,尽早地把控组件和公共模块抽取出来统一管理,是保证视觉风格一致性的有效方法。避免不同设计师同时设计同一个控组件或公共模块,减少重复开发造成的浪费。也大大降低后期更新和维护页面的成本,比如当需要修改“关注”按钮时只需改一个就能全站生效。

 

Step5:响应式模块设计

PC端页面模块细节和风格拼贴稿完成后,剩下工作是拓展出平板和手机端的完整设计稿,前端产出全部响应式页面代码。进行响应式模块设计时最需要关注的仍然是让操作符合设备习惯,充分利用设备特性。

至此,一个全站响应式产品的页面就陆续出来了。很多人认为响应式设计维护成本高的理由是一个页面要同时设计多套设计稿。玩客这次经验告诉我们,确定一套设计稿和栅格系统后再拓展出其它设备下的设计方案,工作量远比想象中的低。


Step6:测试&讨论&优化,提交开发

离大功告成还差最后一步,在真实设备下测试页面效果,项目团队讨论并持续优化。

在提交开发之前需要尽早明确服务端响应( RESS)的策略。服务端与客户端结合是目前解决响应式页面性能问题的最合理方案。哪些大图片在移动设备下只需输出小尺寸图片?哪些内容在什么设备下是不需要开发输出的?哪些可以减少输出的数据数量?与开发团队协作的响应式可以有效控制页面文件大小,避免页面成为移动设备上烧用户流量的罪魁祸首。

测试通过后提交页面进入开发环节。我们从可用性和可访问性两方面总结了一份响应式页面测试checklist,测试要点包括但不限于以下内容。欢迎补充。


结语

以上流程是我们团队做完一个全站响应式项目后集体总结得出,不管你是对响应式感兴趣、正在做响应式,还是即将开始做响应式,希望对你有所帮助。

原文链接: 淘宝UED

用VB5.0获取正在系统中运行的窗口标题 用VB实现浮动按钮 用VB5实现窗口图象缩放、滚动技巧 用VB6建立带光栅的超级开始菜单 用VB尝试新的界面风格 用VB建立字符界面的控制台程序 用VB快速读取TextBox第N行的数据 用VB 设计VCD播放器 用VB设计更好的用户界面 用VB设计聚焦框程序 用VB实现“ICQ”式的启动欢迎画面 用VB实现全屏幕图形界面及动态功能提示 用VB实现任务栏右下角的小图标 用VB制作常居上层的浮动工具箱 用VB制作即时动态按钮 用VB作浮动式图标提示按钮 用Visual Basic编写托盘程序 用Visual Basic窗体背景花纹的实现 用Visual Basic设计窗体背景花纹 用Visual Basic设计更好的用户界面 用Visual Basic设计三维图形按钮 用VisualBasic制作半透明窗体 运行时改变控件大小的两种方法-VB资料 运行中隐藏/显示窗口标题栏-VB资料 在ListBox适当设定水平滚动条的宽度-VB资料 在VB中利用API实现窗体的平滑显示 在vb中让控件大小和位置随着表单的大小成比例变化的方法 在VB中实现闪动标题栏 在VB中实现位图的透明放置 在VB中使用数据窗体设计器插件 在VB中制作单独程序封面的两种方法 [黑色幽默]唉 难道这就是IT人的未来? 几个项目开发问题,有经验者请进。 關於用vb取sybase數據的問題 如何实现呢?请教各位高手,高高手。。。 急。死。问一下UDP的写的一个NETICQ的使用方法.在线等 初学JSP,在用JavaBean创建了一个数据库连接的程序,但是在JSP中用<jsp:useBean>使用JavaBean时出现了问题。 我是新手,一个工程换目录了需要改哪些地方? listview控件网格的高度如何设置啊? 请问TFORM 中的onActivate 事件是在什么时候触发 help 关于菜单 為什麼服務器中的NETLOGON(用戶登錄)服務老是出現錯誤呢? 我的PIII 667 现在启动时自检为333E,然后进入CMOS,提示CPU频率不对,这是什么原因? 分不多了,帮我看看这个短小超难的SQL怎么写 unsigned char * 和 object pascal 中的什么是等价的?pchar 是无符号的么? 那位大哥帮看看 这句为什么总编译不过去 xiexie trectangle类型为什么总说我没有定义?在线等…… 为何收不到邮件的BODY部分? platform builder platform 时出错 有关SQLJ的问题 有谁可以提供几个关天isa server的好认坛? 在计划任务中编写t_sql语句的字符长度限制问题! JAVA 图形化编程如何控制组件的大小和位置!!! 如何用ASP上传文件到数据库、读取并下载? 100分求教我的ActiveForm出现access violation at address...的问题(急急急) 最真诚的祝福大力和璇玑! 控制文件损坏,恢复是碰到了难点--ora-00600错误。怎么办??? 请问WebBrowser对象在弹出式窗口中是不是不能用? 关于CListCtrl的一个问题 多个cpp可以有多个main吗? 怎么样在不同分辨率下显示同一网页不变形? 卡拉OK厅中的男人和女人们(zt) 怎么在一个接口中调用另外一个接口 大力过来 帮忙! 论坛里有保留cookies的功能,但是有些用户说cookies保存不了 大家好!我有问题很急呀!!! 哪个函数可以打开多个文件? 大家请进来说说吧,用什么软件编辑jsp和javascript能测试出网页中提示的:完成,但网页上有错误,这种错误所在的行和具体的什么错误。 关于在课件项目中应用XML的问题,回复心得或相关链接都有赠分 多个附件上传和下载 VB.NET中樹是怎樣展開 我可以把ACCESS数据库的表导出到SQL SERVER中吗? 图片存在目录与存在数据库各有什么优缺点呢? 点击这个框架中的网页能够打印另一个框架中的内容吗 求救~!!!! 请问如何将台式机硬盘上的内容copy到笔记本的硬盘上?? ADO数据集的服务器游标的使用问题 为什么我在发布Delphi程序时总出现Error1324错误 快来救救我的硬盘呀 mydatastore.update() 返回 -1 如何知道出什么错? 如何获得当前光标所在程序的edit框的handle? 世说新语林道人-------翻译 how to become a junior school teacher 九寨沟简短介绍多些,打印要1面的。五彩池的介绍呢?我要中文的,还有五彩池的。 傲世西游100元多少神石 涣溪沙 译文有谁知道苏轼的涣溪沙的译文 be attributed 在1号店购买电器,可以开据保修单吗? 紧急求几个与文明礼仪有关的词语:两个字的! 星际宝贝的实验品分别是在第几集出场的同上实验品是所有的实验品,不然一个的话我会出这么高的分? 谁知道文明礼仪用语,英语的,格式要是比如:Hello 这个女人拿的是什么动物? 乌克兰女权人士在法国民阵线领导人面前美国网络销售辱华面具与服饰 迎接万圣人民币屡创新高 留学迎来最划算时代?外媒分析耶伦若就任美联储下任主席 面法国央行行长:金融交易税构成巨大风险印度拟射火星探测器 欲争亚洲第一被批马来西亚副首相为选举造势 出席者可获法国数百活动人员斗牛场前集结 抗议斗阿根廷执政联盟赢得议会中期选举数据显示中国赴美名校留学生每4人就有印度连环爆炸案已致6人死亡 反对党指旮旯里,很温馨爱家乡、爱旅游“攻防兼备”护航今夏用电“泥巴田小溪里的感情”舟山:生态湿地净化水钱王祠:吴越文化的一个缩影庆“七一”,区供电公司“阿斌党员服务华美带您遇见未来,邂逅爱情店口小镇居民也能逛大商超本场比赛有威胁的进攻飞车大盗妖变末世危机之人类灭绝网游之最强牧神六道之无法无天网游之美女房东闯明生涯使命虚拟骑士调教成神半妖教父青山问道东湖海洋世界旅游东湖鸟语林旅游云南民族博物馆旅游王莽岭旅游鱼木寨旅游龙泉洞旅游太平洋海底世界博览馆旅游湖南文理学院旅游柳叶湖旅游沅江旅游盘山旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘