阅读更多

10顶
3踩

Web前端
如今,工业化设计已经融入到了人们的生活中,用户体验一词就常常出现在人们的视线里,随着互联网web 2.0时代的到来,大大小小的网站设计中也都开始关注用户体验。

用户体验从产品设计阶段便开始介入,如原型设计中交互模式设计、功能实现方式设计都融入了设计人员对用户的关怀,听过这样一句话:“具有良好用户体验的产品,不仅仅取决于一个有着丰富交互设计经验的产品设计师,还与产品生产过程中的每一个环节是否都具备良好的用户体验意识有一定的关系”。

本文从一个页面重构工程师的角度出发,从两个方面谈谈作者所理解的用户体验,以及作者做了哪些和用户体验有关的事情。

一、  从可用到易用的细节处理

1.  按钮、链接、导航菜单的鼠标触发状态、鼠标手型等

随着视觉设计的发展,按钮、链接或者导航菜单的表现方式变得异常丰富,比如:


这些图片丰富了鼠标点击形式的视觉表现力。在基于功能可用的前提下,逐渐通过视觉渲染达到美化的效果,有了精美的设计图后,就需要页面重构工程师们加以切割,在代码化的过程中,通常要做如下考量:

  • 可点击区域大小,例如(下图)尽管风格上似乎按钮只有10*10,但是在实现时,要考虑用户操作起来是不是很容易获取锚点,而不是点来点去找不到。


  • 鼠标操作类型的提示,鼠标输入提示、手型提示、文本区域提示、不可点击提示,尽管整个页面的视觉引导更重要,但用户在操作时,人眼一直跟随着鼠标或键盘的操作而转换,如果能伴随着正确的鼠标操作提示,更可增强引导作用,从而提升交互体验。
  • 按钮风格的一致性,按钮当前状态和点击状态的统一,按钮按照功能所作的统一。
设计师天马行空的想象力,赋予了他们创造性,而我们既要保留他们的创造力还要抽象出一些共用特征,在我看来按钮类型有3种,如果能有效区分,对网站的整体风格的建立和强化交互感受方面都会有一定的一致性,同时在页面构建过程中会抽离成公用信息,非常便于管理和维护。

  • 如确认、取消等,可称之为贯穿型。
  • 如登录、加关注等,可称之为点睛型,这一型在实际工作中通常从视觉上都略强于贯穿型,所以会建议设计师做一定统一,有时候是风格上,有时候是结构上,再甚者就是大小比例上。
  • 如发博文、发微博等按钮,可称之为增强型,通常这个类型不会限制设计师按照标准类型去做,即便出来的是个异型,我们还是应该理解的。
  • 最后就是无论哪种类型,都要注意是否有鼠标点击的hover状态,即便设计师没有设计,也要做出hover的交互效果,至少是预留,就我而言通常都是在原按钮颜色基础上调整一下颜色深度作为hover状态,大部分按钮我都会考虑做出交互效果,当然也有例外,比如活动专题中的点击区域,通常不会增加点击后的过分明显效果,如果非要做出一点效果,最多是调整一下文字本身的明暗度。
2.  图片的alt解释信息



通常拿到设计需求,我会要求设计师帮助梳理icon,一般会分两类——功能型和注释型。同时要求两种类型图片的像素区间要各自保持一致性,这样一来设计师在整理的过程中就会意识到,有的文字没有必要加注释图片,有的是功能和注释类型的大小、风格可能不一致,梳理过程中设计师会去调整一下,同时也在创意的过程中渗透一些规则。


第一、二行是注释型,第三行是功能型

3.  因设计或排版而没有完全显示出来的文字信息的title提示



产品或用户经常抱怨“后面的文字看不到,这到底是什么内容?”之所以出现这样的情况,主要是没有考虑到文字信息出现的位置和当时这些文字的重要性,如果是图片瀑布流,那文字信息的作用只是索引而已,如果是文章列表页或视频列表页、甚至正文页这样的终极页面,标题名称是务必要全部展示的。所以为了避免折磨用户,一定要给显示不完全的信息增加title,在存在缺陷的情况下也能有让用户有些许安慰,否则你就太伤用户的心了。

4.  网站logo的权重设置H1、网站主要标题、标识的权重设置H2-H6、stong、em、b等(对搜索引擎的友好可读性)

考虑各个层面的用户体验,是为了让用户尽量全方位的感受到网页的无边界浏览,在视觉和交互充分发挥作用的背后,代码标签的选择,也从一定层面决定了用户是否能够更好的使用,目前的一些搜索引擎,如Google、Baidu等,在过滤网页信息的过程中,有一套机制去寻找你网页中的主要内容,那些对搜索引擎比较友好的标签会更有利于页面信息的抓取,在用户搜索的过程中,抛开企业间战略合作不谈,也会相对显示在比较靠前的位置。

5.  网站字色的一致性,链接色、提示色、内容字色等 (降低学习成本,培养用户习惯)

设计一套互动类产品(博客、视频、邮箱)或者用户功能型产品(消费类产品、资讯类产品等)同样面临着一个问题——用户习惯,人其实对规律会更容易产生安全感也更容易增加舒适性。所以在网页的设计过程中,统一视觉感受不仅让用户安心、舒适地去浏览图片、文字、音乐、多媒体等信息,也能培养用户认知。

当设计师天马行空的时候我是不会、也不敢去干扰他们,但如果谁告诉我风格确定时,我就会站出来要求设计师给出一整套设计规范,例如:

  • 链接色分主链接色和辅助链接色,建议不要超过2种,增加类功能区域除外
  • 文字色也是主辅都要有,同样不要超过两种(其实有多少种都可以,但你要考虑用户花多长时间适应你的五花八门)
  • 提示信息又分普通提示、正确提示、错误提示、空状态提示等
  • 什么图标类型分为功能型图标和注释型图标
6.  各种内容读取花较长时间的模块,在内容尚未加载成功时,先显示图片图片列表页或视频截图列表页面,在图片尚未加载时显示初始图片,并固定位置,防止满屏跑图




7.  提示性文字位置在不干扰用户操作的前提下,交互一致性很重要,如固定在某一提示位置或不影响操作的颜色提示等

在处理表单过程中,会考虑提示信息所在位置,包括默认提示、出错提示、正确提示等,如果提示风格不统一,会中断用户行为,页面表单填写过程中的流畅度非常重要,为什么会提起这一点,因为在实际工作中,如果没有交互设计经验,不论产品还是设计人员都经常会遗漏表单相关的各种提示信息,但这会影响页面构建过程中HTML的结构,因此如果前期发现产品文档,或者设计稿都没有表现出相关内容,不妨提醒他们务必考虑并添加好,减少后期调整页面结构的冗余工作量。



很多人会说这些不是页面范畴,那页面是什么范畴呢,这些知识有产品范畴的、有设计范畴的、有用户研究范畴的、有交互范畴的,在我看来会这些最大的好处是减少你的工作量,我认为这些都是很基础的知识,不是必须掌握的,但最好了解,了解的好处非常显而易见,就是面对不一定靠谱的需求时,可以有的放矢的给出一些意见,从而减少一些返工,或者细碎的体验的增加。

二、从慢慢等待到愉悦点击的变化

1.  页面模块的按需加载



由于互联网产品发展愈来愈趋向于规模化和正规化,在早年间采用全站只加载一个公用样式的时代已经过去了,取而代之的是对性能更优的模块化按需加载模式,如上图所示,模块化显而易见的好处就是代码冗余相对较低,代码量也较小。除此之外模块化的好处还包括:

  • 结构清晰,易上手;
  • 频繁变更产品需求时的快速维护和开发;
  • 快速下线局部模块;
  • 动态调整页面模块加载优先级时,无需剥离任何代码;
  • 便于多人协同开发;
  • 降低多人协同开发时,互相覆盖代码;
  • 适合开发大型产品等很多优点。
不论对用户,还是对维护开发都是非常有利的。

2.  页面公用元素复用

所谓公用元素,主要指:

  • reset类型
  • 各类文字色
  • 各类链接色
  • 浮层框架
  • 页面主框架
  • 适用于本站的高复用补丁类型
3.  文件调用的层级酌情减小、文件名酌情缩短

如:image/index/module1/limoumou/icon/fabiaopinglun.jpg 酌情优化目录层级

如:fabiaopinglun_default.jpg 、.CommentListContent_linedot{} 酌情优化文件名长度

4.  请求数量和背景大小均衡处理

图片请求数方面,有时候你要考虑CSS Sprite 拼合图片减少背景数,同时还要注意拼合图片K数不要太大,以及拼合图片注意纵横比,建议拼竖图(做过实验,同样内容,横图体积大于竖图)。

当背景图片需要平铺时,请酌情考虑背景图片大小,比如1px高的虚线,请不要切一个1*2的小图,比如1*10,1*50,主要考量在于1*2的小图的平铺次数。

影响页面性能的因素还有很多,例如hack的使用、position的使用、table的使用等等。关键是保持技术的新鲜,丰富自己的知识。

作者注:以上文章只是沉淀了一下过往我在页面重构工作中所领悟的用户体验。略显肤浅,可能大家会质疑,为什么写页面的还要自己加图标状态或者修改局部效果,要知道在早期的互联网在分工上没有现在这样精专的分工,顶多分个前台、后台、产品。当然在当初这些事情不一定有如今的专业深度,但涉猎面的确较如今是更宽阔的。所以早几年开始从事网页制作的朋友,都不会对设计制作界定的那么明显,在图形图片处理方面也是有一定认知和操作能力的。不是为了显摆什么,只是觉得知识的深度和广度同样重要。

  • 大小: 38.7 KB
  • 大小: 44.6 KB
  • 大小: 8.5 KB
  • 大小: 34.3 KB
  • 大小: 18.5 KB
  • 大小: 35.1 KB
  • 大小: 34.8 KB
  • 大小: 40.7 KB
  • 大小: 18 KB
  • 大小: 30.8 KB
来自: 新浪UED
10
3
评论 共 6 条 请登录后发表评论
6 楼 zhangjunbao 2012-02-21 14:45
这篇文章非常不错啊!
5 楼 xingchenzhan 2012-02-21 11:05
lyxmq 写道
raiha 写道
满屏跑图,taobao那图刷的我意识都模糊了

同感

是啊,在中国这种网速~~
4 楼 lyxmq 2012-02-21 10:16
raiha 写道
满屏跑图,taobao那图刷的我意识都模糊了

同感
3 楼 daxiong921 2012-02-21 09:45
foodyi 写道
文章很不错,最近想研究用户体验这方面的一些知识, 不知道有什么好的网站介绍一下?

ucdchina
2 楼 foodyi 2012-02-20 23:29
文章很不错,最近想研究用户体验这方面的一些知识, 不知道有什么好的网站介绍一下?
1 楼 raiha 2012-02-20 23:06
满屏跑图,taobao那图刷的我意识都模糊了

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 学习c++计划

    学习c++计划

  • 学C++有什么用

    C++是一种高级编程语言,广泛用于软件开发,游戏开发,操作系统和嵌入式系统等领域。

  • 都说C++难,那么它到底难在了哪里?

    众所周知,高端的和底层的开发还是主要C与C++的天下。比如开发驱动程序,系统服务,高效的网络通信程序(比如大型网游),甚至开发象SQL SERVER这样的软件。C++的执行效率也是最高的。可惜的是,C++并不是每个人都适合开发,它的复杂度和难度是远远超过Java,C++对比其他语言到底难在哪里?有人对C++异常推崇,除了性能优势,还有什么优点,怎么学好C++? 第一:能力上限要求高 C++的能力上限非常高,可以说在软件领域没有C++做不好和做不到的事情,只是开发者水平和成本问题,而C++...

  • C++中的构造函数(Constructor)

    C++构造函数

  • 自学c十十语言,初学者如何学习c语言,带你玩转C语言

    现在技术发展很快,尤其是计算机行业,计算机的基础是c语言,可以说做什么都需要编程,编程最为基础的就是C语言了,C语言他是一个很有发展前景的计算机编程语言,近十年来,它在编程语言排行榜(TIOBE)稳居前三,C语言绝对是值得初学者学习的一门语言,那今天就带你玩转C语言(1)首先学习C语言你就要有一个好的心态,要有坚持的心态,不能学一段时间,觉得难就不学了,这是最忌讳的,学习C语言坚持是最重要的。(2...

  • 学习C/C++的简单方法

    如何学习C++呢。C和C++是很多专业的必修课,尤其对计算机专业来说,更是重中之重。C++语言是早期发展的高级语言,具备执行速度快,语法优美等特点。是底层高效率系统的首选开发语言。今天就和大家分享一下怎么学好C/C++语言吧 _ 怎么学好C++、C语言呢 工具/原料 C/C++学习资料 浓厚的兴趣 持之以恒的态度 方法/步骤 1 找一本好的书本教材,辅助看教学视频 好的...

  • C++入门——命名空间、缺省参数、函数重载、引用、内敛函数、auto关键字

    今天我们就要来学习C++的知识了,通过C语言来过度到C++,首先我们先来了解一下C++中的入门语法,比如命名空间,缺省参数,函数的重载等知识。一、什么是C++C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机, 20世纪80年代, 计算机界提出了OOP(objectoriented programming:面向对象)思想,支持面向对象的程序设计语言应运而生。

  • C++强大背后

    在31年前(1979年),一名刚获得博士学位的研究员,为了开发一个软件项目发明了一门新编程语言,该研究员名为Bjarne Stroustrup,该门语言则命名为——C with classes,四年后改称为C++。C++是一门通用编程语言,支持多种编程范式,包括过程式、面向对象(object-oriented programming, OP)、泛型(generic programming, GP)...

  • 对C++初学者的学习建议

    C++,一门名声在外的编程语言。作为一门多范式的通用编程语言,它适用的领域非常广泛,小到嵌入式,大到分布式服务器,到处可以见到 C++ 的身影。它的发展前景也非常广阔,作为未来趋势的人工智...

  • C++——入门基础

    C++兼容C语⾔绝⼤多数的语法,所以C语⾔实现的hello world依旧可以运⾏。当然C++有⼀套自己的输⼊输出,严格说C++版本的hello world应该是这样写的。这个现在肯定有点看不懂,看到后面会明白点。

  • 学了C++到底干什么

    看了接近一个礼拜左右的C++了,还是没有知道到底要干什么?很多人估计和我一样,觉得c++是一门很牛X的语言,其实吧,牛叉不牛叉不知道,但是起码我觉得如果你有一门语言基础,学其他的都是应该很好学的,基本语法我基本看了下,没有什么难的和其他脚本语言或者其他语言一样,没有特别的,好像就是多了点模板函数,构造函数复制啊,这些东西,这些东西是其他脚本语言没有的,起码PHP里是真没哟!

  • C++到底还能做什么?

    嗯,这是一位朋友发到我邮箱里面的,很奇怪,发到了gmail邮箱,而不是我常用的hotmail邮箱哈。 我呢,试着回答一下,如果回答得不好,叫做肖某人学艺不精,回去重新学习再来过哈。呵呵。 一家之言哈,欢迎拍装。 原文如下: 肖老师您好:  我现在是一名在校大学生,在学校期间自学C++有两年的时间了,看过C++Primer,stl,inside C++ model(侯捷翻译的那本),com本...

  • C++重点难点讲解

    包含ppt,视频资源,讲解C++重点难点:http://pan.baidu.com/s/1qWQzCDm

  • C++到底是难在哪里?

    C++的难点绝对不是单纯的学习C++的语法。 对于大多数人,都学过C语言,所以一般很容易上手C++; 但是单纯的学习C++语法是没有多大实际用处的,这时,我们一般就会学习MFC,Qt之类的。 这些都是框架,已经不完全是C++了,学起来当然有难度,千万别灰心哦!

  • 学习C++和编程的50个观点

    学习C++和编程的50个观点(1)y Kingofark [注]:是《Kingofarks 50 Points of View About Learning C++ And Programming(kingofark关于学习C++和编程的50个观点)》的简称;是《Kingofarks 35 More Points of View About Learning C++ And Program

  • C++ 50条原则

    1、把C++当成一门新的语言学习(和C没啥关系!真的); 2、看《Thinking In C++》,不要看《C++变成死相》(C++编程思想,翻译的非常差); 3、看《The C++ Programming Language》(这本东西有影印板的)和《Inside The C++ Object Model》 (http://www、csdn、net/exper、、、、、、side-cp

  • corenet轻量级网络库

    corenet轻量级网络库介绍软件架构软件架构说明内存池说明安装教程使用说明HttpServer调试简记(2020.05.29)其它参与贡献致谢码云链接 介绍 本项目提供一种轻量级的网络库,设计思想是one loop per thread + thread pool。 项目已实现: 1、基于TCP的简单聊天室; 2、简单的HTTP服务器(webbench测试的QPS可以达到1万),其中包括功能:用户登录、注册、权限控制、文件上传、文件下载、已上传视频播放、已上传图片展示;(由于使用url传递文件名称,因此展

  • 大白话C++:新手入门教程(附源码及详解、视频课程资料推荐)

    文章目录C++新手必备基础,必看!最全教程!前言集成开发环境(IDE)编译器工作原理学习指南入门书籍进阶书籍教程标准构建程序解释第一个C++程序——“hello world”编译C++基础语法输入与输出C++风格C风格变量全局变量局部变量常量注释C++关键字、保留字C++数据类型数字类型整形浮点型布尔类型字符类型小测试运算符算术运算符实例实例关系运算符实例实例逻辑运算符实例实例C++进阶语法数组声...

  • 我的c++学习计划(两年计划)

    本人11年7月毕业,系辽宁某一本学校毕业,专业软件工程,在校时主修java,没有学习过C++,当时在学校考研究生,没有考上,因为家里有位亲戚在西安搞C++的软件开发,通过几次交流之后对此人甚是佩服,于是义无反顾的追随人家到了西安(女朋友也跟着来了),通过介绍进入了亲戚以前在的公司,搞C++开发,我和女朋友都是东北的孩子,在西安人生地不熟,没有朋友,生活很是艰苦,本人开始想要努力学习工作两年,学好本

Global site tag (gtag.js) - Google Analytics