发表于: 2019-03-06 18:25:03
1 857
今天完成的事情:(一定要写非常细致的内容,比如说学会了盒子模型,了解了Margin)
自适应和响应式的区别
在移动设备上进行网页的重构或开发,首先得搞明白的就是移动设备上的viewport了,只有明白了viewport的概念以及弄清楚了跟viewport有关的meta标签的使用,才能更好地让我们的网页适配或响应各种不同分辨率的移动设备。
其实RWD和AWD都是响应式设计,从外观上很难分辨,但他们自己运行机理不同,RWD是主动式的响应设计,AWD是被动式的响应式设计,RWD不管用户使用的是什么设备都是在服务器把数据推送到浏览器后,脚本或CSS自行侦测屏幕大小后执行对应的样式表内容,并且一直通过本地脚本在监听屏幕大小的变化,随时做出样式响应的变化,所以是主动的。但AWD是用户通过浏览器发送请求后,服务器根据请求中夹带的用户设备设备信息做出判断,调用已经在服务器里准备好的,适应对应设备样式文件+HTML内容+JS,返回给浏览器以这种方式响应不同设备。
Viewport的概念
(1).通俗的讲,移动设备上的viewport就是设备的屏幕上能用来显示我们的网页的那一块区域。
(2).在具体一点,就是浏览器上(也可能是一个app中的webview)用来显示网页的那部分区域,但viewport又不局限于浏览器可视区域的大小,它可能比浏览器的可视区域要大,也可能比浏览器的可视区域要小。
(3).在默认情况下,一般来讲,移动设备上的viewport都是要大于浏览器可视区域的,这是因为考虑到移动设备的分辨率相对于桌面电脑来说都比较小,所以为了能在移动设备上正常显示那些传统的为桌面浏览器设计的网站。
移动设备上的浏览器都会把自己默认的viewport设为980px或1024px(也可能是其它值,这个是由设备自己决定的),但带来的后果就是浏览器会出现横向滚动条,因为浏览器可视区域的宽度是比这个默认的viewport的宽度要小的。
移动设备哪些因素会引起css中px的变化
在css中我们一般使用px作为单位,在桌面浏览器中css的1个像素往往都是对应着电脑屏幕的1个物理像素。但实际情况却并非如此,css中的像素只是一个抽象的单位,在不同的设备或不同的环境中,css中的1px所代表的设备物理像素是不同的。
(1)从iphone4开始,苹果公司便推出了所谓的Retina屏,分辨率提高了一倍,变成640x960,但屏幕尺寸却没变化,这就意味着同样大小的屏幕上,像素却多了一倍,这时,一个css像素是等于两个物理像素的(意思就是你分辨率越大,css中1px代表的物理像素就会越多)。
(2)用户对设备界面的缩放,例如,当用户把页面放大一倍,那么css中1px所代表的物理像素也会增加一倍;反之把页面缩小一倍,css中1px所代表的物理像素也会减少一倍。
devicePixelRation属性
(1)它的官方的定义为:设备物理像素和设备独立像素的比例,也就是devicePixelRatio =物理像素/独立像素。
理解:css中的px可以看做是设备的独立像素,所以知道devicePixelRatio,我们可以知道该设备上一个css像素代表多少个物理像素。
ideal viewport--完美适配移动设备的理想viewport
所谓的完美适配(通常意义下,攻城狮口中的自适应)指的是:
(1)不需要用户缩放和横向滚动条就能正常的查看网站的所有内容;
(2)显示的文字的大小是合适,比如一段14px大小的文字,不会因为在一个高密度像素的屏幕里显示得太小而无法看清,理想的情况是这段14px的文字无论是在何种密度屏幕,何种分辨率下,显示出来的大小都是差不多的。
明天计划的事情:(一定要写非常细致的内容)
继续完成任务
遇到的问题:(遇到什么困难,怎么解决的)
暂无
收获:(通过今天的学习,学到了什么知识)
同今天完成的事情
评论