在快速发展的互联网环境中,各种类型新硬件设备的推出令人目不暇接,如果在这过程里我们的网页能自动适配各设备不同的分辨率且能以比较出色的样式为用户呈现网页的话,那么将为你的业务提供至关重要的作用。
今天,我们大多数人都或多或少的使用过这个技术。据统计,截至2019年,谷歌所有搜索访问中有61%是通过移动设备上完成的。另外,据计划,最迟到2020年9月,谷歌将改变其搜索算法,优先考虑对移动端支持更友好的网站。
响应式网页设计,是指网页可以自动根据用户行为及使用的设备环境(系统平台、屏幕尺寸、屏幕定向等)进行相对应的对布局和行为进行相应的响应和调整。
这些设备特性包括:
但是在响应式网页设计中,服务器向所有设备展现的HTML代码都是相同的,仅通过使用CSS用于改变设备上页面的呈现方式。
无论采用上述哪种方案,为手机或平板电脑创建网站的第一步是先将浏览器的可视范围定下来,这就是viewportmeta标签发挥作用的地方。
viewportmeta标签为浏览器如何调整页面以适应每个设备的宽度做出了依据。
在缺少viewportmeta标签时,移动浏览器将默认使用桌面端的网页样式,所以如果需要开发具有响应式网页时,需要添加viewport标签,以下是标准实现:
媒体查询是自适应Web设计的重要组成部分,通常用于屏幕大小和方向不同的网格布局、字体大小、边距和填充。
下面是移动优先样式的常见用例示例,其中对于较小的设备,列的宽度为100%,但在较大的视口中,列的宽度为50%。
.column{width:100%;}@media(min-width:600px){.column{width:50%;}}虽然媒体查询对于响应式网页设计是必不可少的,但许多其他新的CSS功能也在浏览器中得到广泛采用和支持。在响应性网页设计方面,Flexbox是这些新的重要CSS功能之一。
首先,让我先告诉你“Flexbox能做什么”。
Flexbox布局(FlexibleBox)模块提供了另一种更棒的方式来应对页面种类似布局、对齐和分配容器等需求,即使它们的大小是动态的。
在下面的示例中,我们如上所述结合媒体查询来创建一个响应式网格。
(图1)
(图2)
Flexbox提供了一种很好的方式来实现多样化、流畅的布局。在某些情况下,我们在垂直空间可能没有这样的自由。我们可能需要把一个元素放在固定的高度内。在这种情况下,我们可以使用另一种技术-水平滚动。
可能会有这样一种情况:您的内容会溢出界面,而没有一种优雅的处理方式去解决。没关系,内容溢出滚动条可以为你解决这个问题。
此技术的常见用途包括可滚动菜单和表格。下面是一个可滚动菜单的示例。
通过使用现代图像标签属性,我们可以适应各种设备和分辨率。以下是响应式图像的示例。
好的,了解了上面的一些内容后,想必我们已经对响应式Web设计有了一些了解了,那么我们如何测试已经完成的工作呢?
Chrome的DevTools提供了一系列平板电脑和移动设备的移动仿真。它还提供了“响应式”选项,使您可以定义viewport的大小。
Lighthouse是一个开源工具,它为你提供了一种能分析特定设备网站性能的方法。
Foo在后台使用LighTower监控网站性能,并提供反馈以供分析。您可以为桌面和移动设备设置监控,以获得有关您的网站响应情况的持续反馈。例如,Lighthouse报出当前设备未能正确加载的图像。
自适应网页设计将继续快速发展,随着技术的发展,我们的用户也将会获得更佳的使用体验。另外,响应式的页面也将会更受搜索引擎的青睐。最后,希望简单的介绍能为您了解这些工具和技术带来一些帮助!