所向披靡的响应式开发——如何一招制胜?前端工程师必会技能

之前也接触过响应式开发,大概就是下载一个响应式网站模板,然后替换图片,哈哈!

确实没有系统的学习和了解过响应式开发。最近工作还蛮清闲,找出压箱底很久的响应式开发教程,大概一月前看过一些,然后也忘得差不多la,从头开始学习呗!

这套课程还是很基础的,但越是基础的东西,越不愿意花心思静下心来学习。看完这套响应式开发教程,不仅能够构建响应式开发前端技术树,还帮助自己整理了部分HTML和CSS基础知识,很重要但总记不清楚的知识点。

首先了解一下响应式设计的概念。

什么是响应式网站?

响应式网站(Responsive Web Design)是一个设计理念,在响应式网站的设计与开发中应当根据用户行为以及设备环境(系统平台、屏幕尺寸、屏幕定向等)进行相应的响应和调整。

无论用户正在使用笔记本还是iPad,我们的页面都应该能够自动切换分辨率、图片尺寸及相关脚本功能等,以适应不同设备;换句话说,页面应该有能力去自动响应用户的设备环境,只设计一个网站就能够兼容多个终端

 响应式网站设计的理念是在2010由 Ethan Marcotte 著作的 《Responsive Web Design》一文中提出,它是多项技术的综合体,主要包括:

  1. flexible grid layout 弹性网格布局(别称:流式布局、自适应布局):不对浏览器宽度做任何假设,若分辨率较低或较高,表现会很糟糕,优化程度有限
  2. flexiable image 弹性图片:针对图片的响应式优化
  3. media queries 媒体查询:针对不同分辨率编写不同样式

响应式网站优缺点

优点:

  1. 减少工作量,网站、设计、代码、内容都只需要一份,多出来的工作量只是JS脚本和CSS样式的部分改动。

  2. 节省时间。
  3. 每个设备都能得到正确的设计。
  4. 帮助搜索优化。

缺点:

  1. 需要加载更多的样式和脚本资源。
  2. 设计比较难以精确定位和控制。
  3. 老版本浏览器兼容性不好。

响应式网站设计实践原则?

了解过响应式网站设计概念,在开始真实项目实践前,需要明确响应式网站设计的几个实践原则。避免我们因为基础不牢靠,导致错误的选型。

原则一:progressive enhancement 渐进增强 VS graceful degradation 优雅降级

渐进增强和优雅降级这两个概念是在 CSS3 出现之后火起来的。由于低级浏览器不支持 CSS3,但是 CSS3 特效太优秀不忍放弃,所以在高级浏览器中使用CSS3,而在低级浏览器只保证最基本的功能。二者的目的都是关注不同浏览器下的不同体验,但是它们侧重点不同,所以导致了工作流程上的不同。

渐进增强(Progressive Enhancement):一开始就针对低版本浏览器进行构建页面,完成基本的功能,然后再针对高级浏览器进行效果、交互、追加功能达到更好的体验。

优雅降级(Graceful Degradation):一开始就构建站点的完整功能,然后针对浏览器测试和修复。比如一开始使用 CSS3 的特性构建了一个应用,然后逐步针对各大浏览器进行 hack 使其可以在低版本浏览器上正常浏览。

在相应式网站开发中题主是推荐优雅降级的原则,毕竟@media属性是css3中的新特新。

原则二:先针对大屏幕设计 VS 先针对小屏幕设计

与习惯和网站性质有关,没有对错,只有适合。对于支付理财类的项目,用户通常会选择在电脑上操作(有各种安全证书保障),这时可以先针对大屏幕设计。对于娱乐休闲类的项目,用户习惯在手机端操作,这就可以优先考虑小屏幕的设计。

原则三:如何选择浏览器进行开发阶段的调试

确定支持的浏览器,可根据各浏览器市场占比和公司实际业务情况,选择需要兼容的浏览器。若没有特殊情况,推荐在最新版本的chrome浏览器中进行开发,从chrome浏览器移植到其他浏览器时兼容性还是不错的。

原则四:如何选择媒体查询的断点

建议不要针对特定设备分割,而是针对屏幕尺寸进行分割。例如,

当然这个断点值的选取要根据设计稿进行调整。

原则五:如何取舍大小屏幕上的展现内容

不管设备大小,应该包含相同的内容 VS 根据设备大小不同,显示相同的内容。这就取决于产品经理啦。

响应式网站开发技术点详解

知识点一:单位的选择,px、rem、em

帮你彻底弄懂css中单位px、rem、em的区别,以及在响应式开发中不同单位最优的适用场景。

知识点二:@media媒体查询实例

针对不同屏幕大小,编写不同的页面样式,改用合适屏幕大小的排版和布局。

知识点三:响应式图片的实现

响应式图片不仅仅指图片的排版和布局,还包括根据设备大小加载不同的图片。在移动端设备上访问时,加载与用户设备相匹配的小图片,即快速,又不影响用户体验,也不会因为加载跟移动端不适配的高清大图导致用户流量出走。点击标题链接,将会介绍五种实现响应式图片的方法。

其他,前端开发基础知识点汇总

在学习这套响应式开发教程的过程中,还涉及很多HTML和CSS相关的基础知识,整理如下:

浮动布局实例详解和清除浮动的方法

10 分钟理解 BFC 原理

display:inline-block元素之间空隙的产生原因和解决办法

一文横扫CSS3选择器的使用方法

前端开发人员应该知道的常用工具网站大全

如何组织项目目录结构——项目目录结构规范

浅谈Normalize.css和Reset.css的区别——选择对的默认样式处理脚本

附录 

视频课程原地址:所向披靡的响应式开发 一套代码适配多终端,前端工程师必会技能

响应式开发项目代码地址:https://github.com/Hayley2016/responsive-web-design

需要视频课程的同学可以联系微信【H19950211H】免费提供。

与君共勉:再牛逼的梦想,也抵不住傻逼般的坚持!

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值