美文网首页
响应式站点1-技术基础

响应式站点1-技术基础

作者: 陈涛_滴滴 | 来源:发表于2018-08-18 23:56 被阅读0次

原文3年多前发表在私人站点,现迁移到简书

响应式是指网站在不同分辨率、不同大小的设备下,实现比较好的体验,背后的技术基础在于区分不同设备的尺寸、密度

1.设备尺寸和分辨率

PC时代,设备尺寸一般控制在1024px,基本不考虑用户主动改变浏览器大小的情况。诺基亚时代,已经可以小尺寸设备访问网站,那时候网路差,上网本来就不方便,整体体验都不好,网页都是按照PC渲染,再局部放大将就着看。

iphone刚出现时,也是通过先加载全部网页再放大局部浏览,后面出现了为iphone量身定制的网站,直接设置宽度为320px。ios最先引入了meta viewport来允许用户修改视窗的大小,来达到最好的效果。

** 可以在这里直观的感受下:http://andreasbovens.github.io/understanding-viewport/ **

img

(不设置viewport)

img

(设置了width=device-width之后)

设备密度

iphone3和4都是3.5寸,前者分辨率是320*480,后者是640何960,这和设备密度有关

devic pixel: 物理像素(长宽单位为1)。在屏幕上,元素其实是通过硬件的物理点(RGB)来展示的。1个大设备上的点比小设备上的点要大(很容易理解),只是因为我们看的距离不同(看电视会坐的比较远,看手机会拿的很近),所以对我们来说看着都比较清晰

css pixel: css像素,假设有个div宽20px; 如果以绝对的1:1物理点来显示的话,必然大屏幕的20px会比小屏的px大(想象一下设置一个宽度,在电脑和手机上表现不一样,这就太坑爹了)。 我们实际web开发的时候没遇到这样的问题,因为css px是一个中间层,在retina屏上1X1的css pixel点以4(2X2)个device pixel来展示

img

devicePixelRatio: 设备像素比,就是指多少个物理像素来显示一个逻辑像素,现在比较多的是2,3也有,可以同通过window.devicePixelRatio获得

device width: 设备宽度,指逻辑像素下的款宽度(就是上面的css pixel),比如iphone的device width就是320*480。这里可以查看各种设备的物理像素和逻辑像素

文字

对文字来说,其实不存在不同密度下显示的的问题,font-size:12px;在不同设备上看着都是一样得,因为可以自动的以多个物理点来显示一个逻辑点。但是图片就没这么容易了,一个200200px的图片在2倍密度的设备上,实际对应的是400400的物理点,多出来的点只能以临近的值来填充,所以就会显得模糊。

图片

图片的响应式确实是一个比较棘手的问题,除了视觉上,还有性能上的问题要考虑,上面200200px像素的问题,简单的做法就是提供一张400400的图片,以200*200展示


深入viewport

响应式站点2-viewport和media-query

相关文章

  • 响应式站点1-技术基础

    原文3年多前发表在私人站点,现迁移到简书 响应式是指网站在不同分辨率、不同大小的设备下,实现比较好的体验,背后的技...

  • 响应式Web设计:HTML5和CSS3实战(一)

    一、响应式 web 设计基础 1. 什么是响应式 Web 设计? 所谓响应式 Web 设计,就是网页内容会随着访问...

  • 响应式开发

    响应式开发 响应式网站设计 -----Ethan Marcotte 第一章 响应式网站设计的三大技术成分 流动网格...

  • 《响应式Web设计:HTML5和CSS3实战(第2版)》01章

    响应式Web设计:HTML5和CSS3实战(第2版) 第一章 响应式Web设计基础 1.1 定义需求 响应式设计可...

  • 8 响应式网站的设计流程

    8 响应式网站的设计流程 当客户提出产品功能移动化的需求时,虽然响应式站点并不能算是一种纯粹的移动化解决方案,但是...

  • 响应式网站基础

    响应式网站是一个设计理念,它是多项技术的综合体 2010 年 Ethan Marcotte 发表了 Respon...

  • 响应式设计基础

    1. 前期准备 响应式提出:2010年;三大技术成分: 流动网格 弹性图片 媒介查询 优点: 减少工作量 节省时间...

  • 移动互联网时代,响应式网页设计已成为大势所趋

    互联网技术日新月异,传统PC网站在展示受限和管理不便的双重压力下已经举步维艰,响应式网站可实现多终端站点统一管理,...

  • RxJava,你好

    在我研究响应式编程的过程中,我所找到的每一篇文章几乎都以响应式编程很难学习的理念开头。针对响应式编程零基础人员准备...

  • vue3的ref和reactive以及toRef和toRefs的

    只有响应式数据能更新界面,ref()、reactive()可以生成响应式数据。ref一般用于基础数据类型,按值传递...

网友评论

      本文标题:响应式站点1-技术基础

      本文链接:https://www.haomeiwen.com/subject/jxmqiftx.html