响应WEB概念在移动互联网兴起的初期,的确很火,它主要解决原PC网站样式向移动端过渡的问题,以一套前端代码适配PC、手机和其他显示设备,以较小的代价实现网站产品的多维呈现。
我个人作为勉强的全栈,曾经选用过最热的Bootstrap前端框架,开发过一些web应用。虽然后来,随着移动端越来越成为重点实现方向,感到响应式网站设计,并不能为移动网站带来优良的体验和高开发效率,至少在我近几年的项目中,面向移动端,已经完全放弃了响应式开发方法,采用了更纯粹的移动前端框架,以适应不仅是web,还有APP、小程序的前端需求。
但是,并不能说响应式web设计落伍了,没用了。根据项目特点,人员技术力量,选用最适合的方法,做最优秀的实现,是开发的实践准则。
下面,围绕实战开发响应web的大致方法、流行的框架工具介绍、响应式的优缺点总结,展开一些叙述和讨论。
什么是响应式网站设计?响应式网页设计 Responsive Web Design,从开发角度上讲,就是使网页能通过识别屏幕宽度、做出相应调整的网页设计,它面向的设备是超宽屏幕、pc显示器、平板电脑、手机。这里面大家很容易忽视超宽屏幕的设计,因为很多开发者为了简化设计,往往在针对超宽屏幕只做居中处理。
实现原理
通过css样式语言,有时候也会结合一些javascript,考量屏幕宽度,自动调整网页显示和布局,以适应不同尺寸屏幕的浏览优化体验。
实现目标
最好的响应式设计,就是设计者开发出一套全端网页,为电脑、手机、平板等不同终端的用户提供更加舒适的界面和更好的交互体验,比如手机端的触摸和PC端鼠标操作效果。而且随着目前大屏幕移动设备的普及,响应式开发方法还是有自己独特的优势。
响应式网站开发方法布局
在构建响应式网站或改造旧网站成为响应式结构时,首先要考虑的就是布局。
主要是两部分页面元素:
延展全屏宽的元素,比如我们在PC贯穿全屏宽的元素,css: width:100%;
主内容块的最大宽度定义,以下定义了4种常见分辨率的容器最大宽度;
@media (min-width: 576px) {
.container { max-width: 540px; }
@media (min-width: 768px) {
.container { max-width: 720px; }
@media (min-width: 992px) {
.container { max-width: 960px; }
@media (min-width: 1200px) {
.container { max-width: 1140px; }
媒体元素宽度定义
下面的CSS代码将确保图片永远不会比其父容器大:
img { max-width: 100%; height: auto; }
或者根据设备的分辨率不同,需要显示不同size的图片:
<img src=" image.jpg" alt="" data-src-600px=" image-600px.jpg" data-src-800px =" image-800px.jpg" />
这种弹性显示媒体的方式,需要借助CSS或JS的方式实现。
版式(Typography)定义
这是响应式设计中最重要的部分,有很多响应式设计的排版方式需要注意,比如:
CSS3规范中包含了一个定义尺寸的元素rem。它的工作原理与em几乎相同,但是rem的大小相对于html元素而言,这使得rem比em更容易使用。
html { font-size:100%; }
通过以下CSS代码可以定义不同分辨率下的相对字体大小。
@media (min-width: 640px) { body {font-size:1rem;} }
@media (min-width:960px) { body {font-size:1.2rem;} }
@media (min-width:1100px) { body {font-size:1.5rem;} }
最流行的响应式框架使用前端框架可以提高前端开发的效率。通常框架已经为开发者搭好了脚手架,只需要在上面累加我们的特殊需求就可以了,这帮助码农减少编码工作量,并节省了宝贵的时间。
当前有各种各样的响应框架可用,并且新仍在不停的进化更新。在众多选择中,选择适合的框架是很困难的。下面列举了几个最流行的响应框架。
Bootstrap
Bootstrap是国内最流行、最快速、最友好的框架。这个框架是2011年由Twitter的开发者创建的。目前,整个网络上有数百万的网站都在运行这个神奇的框架。在GitHub他的追捧数量已经超过了100多K。
Bootstrap包括了HTML、CSS和JavaScript。你可以轻松地开发各种规模和复杂度的响应式网站。
Foundation
Foundation是一个企业级的前端框架。FaceBook、eBay、Mozilla、Adobe、HP、思科、迪士尼等都在他们的网站上使用这个框架。
它相当复杂,不适合新手使用。Foundation具有可读性、灵活性、语义性和完全可定制性。Foundation自带GPU加速功能,可实现闪电般的快速和流畅的动画效果。它提供了Fastclick.js,可在移动设备上快速渲染。
Pure
非常轻的一个框架。该框架包含响应式CSS模块,是为迎合移动市场而开发的。开发人员可以使用各种样式、CSS模块以及组件和可定制的工具来开发网站。
Semantic UI
SemanticUI是相对较新的框架,但它在很多方面都很突出。它已经成为非常流行的前端框架之一。它使用的是自然语言。
Semantic的性能记录功能让你可以追踪到代码的瓶颈,而无需深挖堆栈痕迹。使用Semantic,直观的底层之上可以配备一个高级主题变量,让您有充分的设计自由度。
Semantic UI集成了大量的第三方库。因此整个开发过程会更容易一些。
响应设计的优点
响应式方式可以在台式机,平板电脑或智能手机上构建流畅运行的web样式设计 。它的实质是一种适配性的编码设计,它具备很多优点:
开发维护一套前端响应式代码,可以适配多种显示设备。只需要拥有一个入口网址,无须通过脚本,判断浏览设备而重定向访问,更不需要配置二级域名。简化SEO(搜索引擎优化),响应式设计,无需为移动版本创建特定的内容,这对SEO友好的。搜索引擎收录的只是内容,而对网页语言代码毫无兴趣。因此,谷歌百度在一段时期还建议优先考虑响应式设计。有可能会节约开发成本?这一点我自己也很有疑惑,我个人认为如果是仅仅适配显示的话,响应式设计的确可以节约成本,但精致的移动端交互设计,还是纯移动框架最受用。简化网站推广数据分析,无论来自什么入口,都一网打尽所有访问数据。响应设计的缺点
尽管响应式设计有很多优点,那么缺点应该被忽略吗?事实并非如此。响应式网页设计有一些需要注意的缺点。为了在一套体系框架下,去做各分辨率下的大小显示适配、内容取舍,那种煎熬你体验过吗?
某些响应式网站的加载时间会更长。因为将加载一些不必要的HTML / CSS。例如,很多响应站点上的图像只是在视觉上按比例缩小,而没有采用媒体内容的弹性加载策略。
耗时的开发。对于响应式网站而言,这是一项耗时的任务。如果您打算将现有网站转换为响应式网站,则可能需要更多时间。
响应式Web设计的流体布局,使设计人员难以很好地控制设计风格。设计人员正在尝试分别针对移动和桌面布局显示线框和设计原型。只有改进了这两种布局,才能真正实现响应式Web设计策略。
UX(用户体验)不佳。通过响应设计,您想要同时满足台式机和移动用户的需求。但是,移动设备和台式机毕竟是完全不同的用户体验。因此,有很大风险可能同时失去两类用户。需要承受内容的取舍。排版的需要、推广策略的不同、体验的差异,造成移动版本的内容很可能与桌面版本的内容不一致。因此,采用响应式设计不可能使您的内容适应这些设备中的每一个,那么在一个页面里用技术实现这种取舍,是很痛苦的。写在最后选择了开发,终会有学不动的那天,对于前端、后端、运维、全栈,都是一样。某项技术熟练了,我们总希望它的生命周期长一点。如果有一天,对新技术的那种兴奋感不再有的时候,做一个方向的了解者规划者也是不错的。
希望所有Coder身体健康,永远快乐。
无论是国外还是国内,平面设计类的网站都种类繁多,而国内常的一些设计门户网活跃度和质量高的也是屈指可数的几家。但由于平面设计师日益受到的国际视野的影响,对这些网站也有着不同的喜好和需求。 比如平面设计师...
这个主要通过自己建立一个.htaccess文件并放到网站根目录就可以了。* PHP的只要在.htaccess修改就可以了 在.htaccess 文件中加入:ErrorDocument 404 /not...
学校网站建设同的意义: 1、学校网站是一个学校对外宣传的窗口,是学校对内办公事务的工具,有很多功能如:网上选课、网上查分等,都可以通过学校的官网实现; 2、学校网站为能学生提供各种信息,如学生会组织某...
深圳网站建设公司很多的,就做网站建设上市的公司不知道有哪些,可以在网上搜索一下。其实选择网站建设公司合作的时候主要是看技术实力和售后服务,商业性网站的稳定性和安全性非常的重要,互联网是无界的,所以在选...
现在和未来20年甚至2050年,“互联网+商城”是实体店家和无实体个人经商销售商品的必然趋势之选项,这~不由谁的主观意愿可以改变社会发展和贸易方式。 借鉴历史回看原始社会,部落与部落之间的猎物是“等值...
自定义域名的邮箱获取途径有很多个方法, 但是最不推荐的就是自己搭建服务器使用! 不推荐的原因有 1/自行搭建维护成本高 2/服务器配置复杂 3/搭建过程复杂 推荐方案 一、阿里云免费企业邮箱 搭建前...
把域名泛解析并绑定到VPS或虚拟主机上,以实现访问网站,其实也很简单的,按照下面的流程操作就可以了。 一、什么是泛解析 首先了解下,什么是泛解析。 “泛域名解析”是指:利用通配符* (星号)来做次级域...
企业网站有什么作用? 1,在互联网上展示企业的形象。做生意开工厂都有门头、招牌,网站就是企业在互联网上的招牌,互联网是没有边界的,另外就目前的现状来看,企业网站对提升企业形象来说还是有作用的,简单的说...