《大巧不工 web前端设计修炼之道》学习笔记
前端设计如同一个人的着装与外表,站点的设计总是最先吸引人们的眼球。布局是否合理、风格是否简介、配色是否和谐,流程是否通畅,操作是否便捷,这些前端特效都影响着用户对站点的认可度。随着用户体验,可用性,可交互性等越来越多的前端术语的出现,前端设计已经不是简单的HTML、CSS、AJAX等元素的整合了,它更关注交互的流畅性、操作的便利性、流程的合理性、结构的清晰度以及可维护性、页面兼容性以及同后端程序的良好桥接等,应该能够在真正理解WEB应用的需求的基础上放眼全局,把握整个前端的设计方案,因此新的时期赋予了前端开发人员新的使命,业内更需要全能的开发人才。
1、视觉设计
了解web排版艺术以及交互艺术,PS,了解web应用的一些方法:布局,排版,字体,色彩,表单等,为用户提供良好的视觉体验
2、交互设计
强调可用性:在效力、效率、满意度三个维度进行衡量。效力:用户可以完成任务;效率:用户完成任务的快慢;满意度:用户是否很享受完成任务的这个过程。
打开网页,你是否很希望你关注的消息显示在最醒目的位置?你是否喜欢某一操作因为比较简单?你是否希望网页上只出现你最想看到的内容。
总结:用户的3种特性:懒惰,喜新厌旧,有想法。
设计时候遵循以用户为中心的设计原则:UCD(user-centered Design):即以用户为中心进行产品的设计,开发和维护,一切都从用户的感受和需求出发,而不是让用户去适应产品,要做到这一点,就必须要时刻关注用户习惯、视觉感受、交互方式等细节。
工具:axure rp ,主要针对负责定义需求、设计功能、设计界面的专家,包括用户体验设计师UX、交互设计师UI、业务分析师BA、信息架构师IA、可用性专家UE和产品经理PM
原型设计和客户的交流发生了如下改革:
1.可以进行更高效的设计
2.体验动态的原型
3.更清晰地交流想法
制作线框图应该注意:
1.需求:requirements
2.精简:reduction
3.规则:regularity
4.重构:refatoring,理解为在编程领域中为了改善代码的质量而进行的工作。也就是改进。
使用PNG,是一种无损的位图图片压缩格式,与目前常用的GIF图片格式相比,它有更多实用的优点:
1.更高的压缩率
2.更高的颜色深度
3.基于Alpha通道的透明色
色彩:
人类可以感知波长为380nm到780nm的光波,意味着我们可以感知赤橙黄绿青蓝紫的七彩世界。均衡的色彩让人舒心,突兀的色彩让人烦心。比如IBM笔记本的设计黑色为主,再配上一个红点,使整体显得协调而醒目。
色彩三要素:
色相:色彩的首要特征,例如红色,黄色,蓝色,就是颜色属性中的色相。
饱和度:色彩的纯度,颜色混合的次数越多,则纯度越低。设计上:饱和度相似能使设计更具凝聚力。
明度:色彩的亮度。颜色有深浅,明暗的变化。白色的明度值最高,黑色最低。
流行配色:
1.单色系配色:稳重
2.相似色配色:相同色度的颜色
3.互补色配色
4.三色配色
页面内容的优化:
1.降低请求数
1)合并文件
2)CSS Sprites:把所有的背景图像放到一个图片文件中,注意:不能滥用,后期维护困难;若在系统架构中缓存策略做得好,同样可以尽可能低使用这项技术,因为首次加载的时间会变得更长。
3)剔除重复脚本:带来多余的http请求和javascript运算,影响页面性能。
2.减少交互通信道
2.1压缩技术
1)压缩:压缩javascript和css,减少文件大小,节省下载时间
2)优化图像:PS中使用“保存为web格式”来保存切割图片,可以输出适用于web质量的图像。(PNG,JPG,GIF)
其中:gif只有256色,不易表现色彩丰富的图像,小图标,支持小动画;JPG格式压缩比较高,所以适合用于照片类的图像。PNG格式包含了PNG-8及真彩的PNG-24或PNG-32,体积更小,且支持alpha通道,不支持动画。
3)减小cookie体积
2.2:合理利用缓存
1)使用外部javascript和CSS,可以提高页面加载速度,因为外部文件都能在浏览器中产生缓存,而且可以减少html文档的大小。如果把javascript和css内置在html中,则每次请求的时候都会随html文档重新下载,在用户访问站点中的多个页面时,这种方式带来的性能提高更加明显。
2)缓存Ajax
Ajax可以实现前端和后台服务的异步通信,使浏览器不用刷新整个页面就能够获得数据,带来良好体验的同时,能快速得到异步的HTTP响应同样重要,提高Ajax性能的措施最重要的就是:使响应具有可缓存性。
2.3.减少不必要的通信量
1)剔除未用到的脚本和样式。
2)推迟加载内容
3)使用get完成Ajax请求,使用POST方法需要首先发送文件头,然后发送数据。而post,只需要发送一个TCP数据包(除非有很多cookie),但是IE中的URL的最大长度是2K,因此如果发送一个超过2K的数据就不能使用GET了。
4)对于静态内容使用无cookie请求。
3.合理使用“并行”
3.1尽量减少重定向
3.2慎用iframe
3.3样式置于顶部
3.4脚本放到样式后面加载
4.节约系统消耗
4.1避免使用CSS表达式
4.2避免使用滤镜
二 IE及解析CSS的Bug,28个普通Bug、4个布局bug、6个可以绕开的bug.(个人建议:不需要刻意去记忆,遇到bug的时候,根据实际情况灵活应对就好)
《大巧不工 web前端设计修炼之道》学习笔记的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
- DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记
今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...
- ucos实时操作系统学习笔记——任务间通信(消息)
ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...
随机推荐
- C#中virtual和abstract区别,举例子
virtual和abstract都是用来修饰父类的,通过覆盖父类的定义,让子类重新定义. 它们有一个共同点:如果用来修饰方法,前面必须添加public,要不然就会出现编译错误:虚拟方法或抽象方法是不能 ...
- 原来腾讯安全中心TP和虚拟机vmware10是有冲突的
用VMware 10启动linux,总是出现VMware Workstation 不可恢复错误: (vmx)... 然后网上查了好多类似问题始终不能解决.后来发现每次出现这个问题腾讯的TP是启动的 ...
- 浅谈UBUNTU
一 UBUNTU介绍 Ubuntu(乌班图)是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨语的"ubuntu"一词,意思是"人性".& ...
- 树形DP--求树上任意两点间距离和
例题:HDU2376 HDU6446(2018CCPC网络赛) 思路:求任意两点间距离和可以转换为->路径长度乘经过路径次数的和. 求经过次数:设这条边两端的点,被经过的次数分别为A和B,那 ...
- Java Web之数据库连接池
数据库连接池 一.数据库连接池 1. 数据库连接池就是存放数据库连接(Connection)的集合 2. 我们获取一个数据库连接是一个相对很麻烦的过程,如果我们获取一个数据库连接,使用一次以后就给它关 ...
- luogu3455 [POI2007]ZAP-Queries 简单的莫比乌斯反演
link ms是莫比乌斯反演里最水的题... 题意:对于给定的整数a,b和d,有多少正整数对x,y,满足x<=a,y<=b,并且gcd(x,y)=d. 多组询问, T<=50000, ...
- eclipse gradle 找不到依赖解决办法
右击工程,选择gradle 在点击Refresh Gradle Project 即可,..不得不说,gradle 在eclipse 下真没maven 好用.....
- Linux防火墙详解
1.Linux防火墙基础 作为隔离内外网.过滤非法数据的有力屏障,防火墙通常按实现环境的不同分为硬件防火墙和软件防火墙.硬件防火墙是功能专一的硬件设备,具有比较全面的功能,其工作效率较高,但是加个昂贵 ...
- Liunx php函数 smtp 发送邮件
1. 查看防火墙是否开放端口 默认smtp 25 iptables -L -n 如果没有,添加25端口 iptables -A INPUT -p tcp --dport 25 -j ACCEPT ip ...
- C#面试题-递归
有一组数1.1.2.3.5.8.13.21.34...,求第n个数是多少? public int Recursion (int n){ ){ ; } &&n<=){ ; } )+ ...