响应式网站和自适应网站的区别

魔王先生 建站知识 2个月前 1092℃ 0
摘要:

我在之前很长一段时间都以为响应式网站和自适应网站是一回事,但是接触的多了才发现这2个概念是不一样的,下面魔王先生就和大家一起把这2个概念梳理一下吧。其实不管是自适应还是响应式,归根到底都是从网站建设实...

我在之前很长一段时间都以为响应式网站和自适应网站是一回事,但是接触的多了才发现这2个概念是不一样的,下面魔王先生就和大家一起把这2个概念梳理一下吧。

响应式网站和自适应网站的区别

不管是自适应还是响应式,归根到底都是从网站建设实际出发,为了解决在不同大小和分辨率的设备上正确显示网页的问题而发展来的,想明白这个事就好理解了。

1、响应式网站由来

最开始网站都会被设计成固定宽度的页面,最开始的PC显示器的分辨率种类不多,因为当时电脑本来就少,即使有变化也是800、900、1050、1200等几种。比如GitHub的网页就是固定宽度为1020px来定制的。

后来随着显示器越来越多,以及笔记本的普及,这种方式的页面出现了问题。在大屏显示器上整个页面显的特别小,在小屏显示器上网页又出现滚动条导致用户体验极其的差。为了解决在各种不同大小和分辨率的设备上如何正确显示网站的问题,前前后后也出现了好多种方案。

提供不同版本:最开始的解决方法,是为不同的设备提供不同版本的网页。比如一个站点为PC、Mobile、Pad提供三个不同的版本。这样做固然保证了效果,但同时要维护好几个版本比较麻烦,而且网站有多个入口,会大大增加系统架构的复杂度。

自适应:后来人们就开始想能不能"一次设计,普遍适用",即让同一个页面自动适应不同大小的设备,从而解决为不同设备提供不同版本的页面问题。这就是所谓自适应布局解决方案。

响应式:采用自适应布局的话,如果设备太小,就算网页能够根据屏幕大小进行适配,但是在太小屏幕显示内容过多会看不清楚。为了解决这个问题而衍生出来的一种新的布局方式,那就是响应式布局。

2、响应式和自适应的区别

下面有两个网址,你用浏览器随意的调节窗口的尺寸就可以很直观的感受到两种展示效果的差异:

自适应网站(网页内容和布局完全一样):http://m.ctrip.com/html5/

响应式布局(网页内容和布局随着屏幕尺寸变化而变化):https://www.microsoft.com/zh-cn/

从http://m.ctrip.com/html5/这个网页以看出采用自适应布局的话,不管设备屏幕尺寸如何变化,打开同一个页面看到的内容和布局基本上是一样的,不同的只是内容的尺寸。

这样就会引发一个问题,那就是如果设备太小,就算网页能够根据屏幕大小进行适配,但是在太小屏幕显示内容过多会看不清楚,从而极大损害用户体验。

响应式布局正是为了解决这个问题而衍生出来的一种新的布局方式。这个网站https://www.microsoft.com/zh-cn/ 你可以看到它是可以自动识别屏幕尺寸并做出相应调整的网页设计,页面布局和展示的内容可能会随着屏幕尺寸变化而有所变化。

网络上也有网友用这么一张图来总结响应式和自适应的区别:

响应式网站和自适应网站的区别

如上图所示,对于同一个页面(图中的Html),如果用响应式布局来处理的话,用不同设备(电脑、平板、手机)去访问此页面,最后看到的布局和内容有很大不同。

而如果用自适应布局去处理的话,那不管访问设备如何的不同(上图是三台尺寸不一样的手机),最后看到的页面内容和布局基本上还是一样的,就是尺寸略有不同。

其实响应式和自适应两种布局方式从外观上很难分辨,但从技术角度来说他们运行的机理不同。所以最后从技术角度再来总结一下两者的区别:

自适应是用户请求访问时会夹带设备信息,服务器据此做出判断并调适应对应设备样式文件+HTML内容+JS,返回给浏览器以这种方式响应不同设备。

响应式布局不管使用什么设备都是在服务器把数据推送到浏览器后,脚本或CSS自行检测设备屏幕大小后执行对应的样式表内容,并且一直通过本地脚本在监听屏幕大小的变化,随时做出样式响应的变化,这是主动的。

发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。