前端响应式设计漫谈
创始人
2025-05-30 12:54:03
0

当前,响应式开发已经深入前端开发领域,几乎成为C端界面开发的标配。前端开发者不得不更多考虑界面的响应式特性,以使界面具有更良好的设备适配特性、更一致的用户体验。

响应式不是什么

我们知道10多年前的网页,那时基本上以PC版面为主,少数页面才会单独开发成移动端页面,但元素的丰富性、美观性、交互性与PC是无法想比的。在PC页面中,浏览器常常提供了缩放操作,以便用户在手机上查看,规避手机上展示不全PC页面的问题。但这仍然是极为糟糕的体验,一眼看不到网页的全貌,即便是做了wap的网页,也是单独做了一套网页,这就典型的不是响应式。

为什么采用响应式

我们首先需要知道的为什么需要采用响应式设计?也就是说,采用响应式设计有什么好处?

  • 更多的设备适配。相比于非响应式设计界面,响应式开发的界面能够适配更多的设备和场景,从而收获更好的用户体验。
  • 更一致的用户体验。这就是说:响应式界面针对不同设备尽量采用了相同的布局来实现,这比使用多套不同的布局来实现适配更加协调。
  • 更好的seo。响应式界面由于布局代码上具有一致性,仅仅是样式的一些变化,这利于搜索引擎更好的抓取不同设备上的关键代码,会使得seo效果更好。对于极为重视seo的业务,甚至是核心诉求。

响应式开发是媒体查询吗

几乎所有的前端开发者都会接触到媒体查询,并基于媒体查询做设备适配。这使得一些开发者尤其是初学者认为响应式开发就是基于媒体查询的适配,因为从效果上来看,这也是为了实现多种设备的“响应”,但这种观点是极为片面,甚至是错误的。

应该说:

  • 媒体查询是响应式设计实现的一种技术手段,但它不是响应式设计本身,这是两个不同层次的概念。
  • 我们的响应式开发,通常会用到媒体查询代码,但也可以不用媒体查询,譬如使用flex布局、百分比、rem等方案,其核心是使得界面的布局尽量具有跨设备的一致性,在这个目的下,媒体查询只是用于实现的一种技术方案。

我的界面需要采用响应式吗

响应式设计的第一步,便是定位你的目标群体,这是你决定要不要采用响应式开发的关键。

  • 对于C端界面,一般而言现在都要求做响应式了,或者说无论有没有这方面的诉求,做响应式有益无害。当然,相比于非响应式,耗费的开发时间会更多。
  • 对于B端系统、后台界面,由于仅供用户查看数据、管理数据使用,一般数据的展示、操作较多,对体验性要求不高,对数据的准确性要求较高。这时,就不需要考虑响应式设计。
  • 一些系统由于本身历史原因不太支持响应式开发,这时为了保持代码的一致性,可能也暂时可以不用响应式。但从长远来看,一般还是会逐步过渡到响应式。某些企业而言,可能会成立专门的响应式推进小组,用于公司网站的响应式迭代。

响应式响应在哪儿

响应式的响应在哪儿呢?

  • 响应式针对几乎所有的尺寸都能实现良好的展示。小到手机,中至平板,大到PC、4K分辨率以上屏幕,都能良好适配,甚至一般要求全分辨率适配。即除开一些实在过小的非正常屏幕,几乎所有分辨率都能良好展示。
  • 响应式具有比较一致的页面布局。尤其对于html结构,在不同分辨率下,会尽可能的使html保持一致,而不是分成多套不同的html布局。前面提过,这对于SEO也具有很大的作用。
  • 响应式在样式上也具有较多的自动适配特性。这就是说,在分辨率A下,某容器可能占有40%的版面,到了分辨率B下,某容器仍然占有40%的版面,这种特性在响应式中更多的体现。因此,响应式中多使用灵活而非固定的样式属性。

响应式开发建议

  • 尽量使用相对单位,而非绝对单位。譬如,百分比、vw、vh、rem、em等,而非使用px。
  • 尽量使用具有适配性的布局,而非写几套。譬如,使用flex布局,将很好的利用其自动伸缩特性。
  • 尽量推进UX部门采用响应式设计稿。对于响应式而言,一套是体现不出响应式特性的,因此响应式设计稿一般需要3套以上。
  • 适当采用栅格式布局。
  • 少数特殊情况特殊优化。

相关内容

热门资讯

linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
C++ 机房预约系统(六):学... 8、 学生模块 8.1 学生子菜单、登录和注销 实现步骤: 在Student.cpp的...
JAVA多线程知识整理 Java多线程基础 线程的创建和启动 继承Thread类来创建并启动 自定义Thread类的子类&#...
【洛谷 P1090】[NOIP... [NOIP2004 提高组] 合并果子 / [USACO06NOV] Fence Repair G ...
国民技术LPUART介绍 低功耗通用异步接收器(LPUART) 简介 低功耗通用异步收发器...
城乡供水一体化平台-助力乡村振... 城乡供水一体化管理系统建设方案 城乡供水一体化管理系统是运用云计算、大数据等信息化手段࿰...
程序的循环结构和random库...   第三个参数就是步长     引入文件时记得指明字符格式,否则读入不了 ...
中国版ChatGPT在哪些方面... 目录 一、中国巨大的市场需求 二、中国企业加速创新 三、中国的人工智能发展 四、企业愿景的推进 五、...
报名开启 | 共赴一场 Flu... 2023 年 1 月 25 日,Flutter Forward 大会在肯尼亚首都内罗毕...
汇编00-MASM 和 Vis... Qt源码解析 索引 汇编逆向--- MASM 和 Visual Studio入门 前提知识ÿ...
【简陋Web应用3】实现人脸比... 文章目录🍉 前情提要🌷 效果演示🥝 实现过程1. u...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
windows安装JDK步骤 一、 下载JDK安装包 下载地址:https://www.oracle.com/jav...
分治法实现合并排序(归并排序)... 🎊【数据结构与算法】专题正在持续更新中,各种数据结构的创建原理与运用✨...
在linux上安装配置node... 目录前言1,关于nodejs2,配置环境变量3,总结 前言...
Linux学习之端口、网络协议... 端口:设备与外界通讯交流的出口 网络协议:   网络协议是指计算机通信网...
Linux内核进程管理并发同步... 并发同步并发 是指在某一时间段内能够处理多个任务的能力,而 并行 是指同一时间能够处理...
opencv学习-HOG LO... 目录1. HOG(Histogram of Oriented Gradients,方向梯度直方图)1...
EEG微状态的功能意义 导读大脑的瞬时全局功能状态反映在其电场结构上。聚类分析方法一致地提取了四种头表面脑电场结构ÿ...
【Unity 手写PBR】Bu... 写在前面 前期积累: GAMES101作业7提高-实现微表面模型你需要了解的知识 【技...