ELECTRONICS WORLD・探索与观察 基于HTML5技术的响应式Web设计浅析 中国东方电气集团有限公司 程荣赞 【摘要】随着互联网技术的飞速发展,为适应l-:l益增长的多元化终端设备浏览需求,使用户在不同阅读终端上都能有良好的使用感受,本文 浅析了一种高效的解决方案:基于HTML5技术的响应式Web设计..通过对媒体查询、流体布局、弹性图片等Web设计技术的组合和提升 实 现任意阅读终端对网页布局及内容都能良好地呈现,是未来Wc1)设计技术发展的大势所趋 j 【关键词】响应式;HTML5;Web设计
0引言 随着1Tf ̄'i息技术和移动互联嘲的I{l速发展.移动阅读终端,如 平扳电嘧、智能于机等越来越普及,H型号各异,而备类桌面计锌 机、电视 幕规格也越来越多 化,主流设舒的概念越来越被淡 化。让网站 最兼容各类设备,适应各种分辨率的屏幕,确保 良好的用厂{体验,是Web前端l』f发工程师必须要解决的重要问题。 响应式Web波汁 此应运而 卜,一个网站能够兼容多个终端,而不 是为每个终端都做一个特定的版本,就像具备自主辨识能力一样, 确保用户无论在何种阅读环境卜,都能得到良好的体验感。 1 响应式Web设计的概念 独立Web 汁帅伊森马科特(Ethan Marcotte) 2O1O年首次 提出了响心式Web设计’(Responsive Web Design)概念。他认为, 真正的响心式Web设计方法 仪仅是简单的根据可视区域大小来改 变网页布埘,而是要从整体L颠覆当前的网页设计方法,是针对仟 意阅读终端的 页内容进行究荚布局的一种显尔机制。意 ,一个 响应式州站=智能于机端网站+ 板电脑端网站+桌 电脑端网站+ 其他显示终端 i。 0 — ≯ 图1晌应式布局示例 2响应式Web设计的优缺点 罾靛手机屏覃 { 一 ) l l — }=== ; }钿自■ ■“M j l斓 { {解融餮罐辩l 2.1响应式Web设计的优点显而易见 (1)浏览器兼容性良好,用户体验友好。传统Web设计通常 只适用于某些特定规格的设备,如果新设备的屏幕分辨率变化较 大,则往往无法兼容。而开发新的版本又需要更多的时问成本与人 工成本。响应式Web设计则仃¨玫地解决了这个问题。响应式网站可 以根据不 终端设训、不同』珲幕尺寸和不同应川环境,自动调整页 面布局、腱尔内容、图文大,J、,提供最符合人体视觉习惯的视觉展 示效果,刚,’体验十分友好。 (2)降低设计丌发、运营维护成本。传统Web没计模式需要 对桌面电脑削页、平板电脑网页、智能手机网页分别进行单独设 计与开发,一 作量巨大,而响应式Web设计只需设计两套设计效果 图,桌面电脑端与平板电脑端可以共用…套,智能手机端单独使用 一套;从前端开发角度说,不再需要分别开发曼套完全不一样的页 面代码,只需要根据临界点为不同终端开发三套不同的CSS样式; 从后期维护角度来说,操作灵活.响应式Web设汁足针对 瓶的, 可以只对必要的页面进行改动,其他页面不受影响,因此不再需要 分别维护电脑页面、 板页面、手机贞面,只需维护一个页面即 可,极大地节约了人工成本与时间成本。 2I2与此同时。响应式Web设计也有自己的局限性 (1)对%webkit内核的老版本IE浏览器兼容性较差  ̄webkit 内核的老版本IE浏览器(如IE6、IE7、IE8)无法访问响应式网 页,但由于这止匕老版本IE浏览器本身已有很多问题,往现代 联网 环境中己建议停用。 (2)页面Ⅱ向应速度可能会变慢。由于访问响应式贝两时会剧 时F载多套CSS样式代码,如,刚手机访问时, 能同时下载桌面 电脑、平板电脑的样式代码,导致网页文件变大,影响加载速度。 不过CSS样式代码占用内存丰}I对图片来说不算大,如果前端程序开 发优化得当,基本不会影响网站加载速度。 在当今互联网时代的基础设施和技术条件下,响应式Web设计 的优点非常突出,缺点已经显得瑕不掩瑜,n向应式设计必定是未来 发展趋势。
3基于HTML5技术的响应式Web设计实现 3.1 HTML5技术的优势 HTML5由万维刚联盟(W3C)于2014年10月发 i,足指包括 HTML、CSS和Javascript在内的一套技术组合,¨前夫部分浏览器 已经支持HTML5技术。HTML5强化了Web网页的表现性能,且追 加r本地数据库等Web应用功能。 相较传统的Web网贝开发技术,HTML5拥宵着无可比拟的优 势。HTM[ 5技术的成熟与革新对响应式Web设讨的发展起剑了至 关最要的作刖。任创建页面时.HTML5强调简化标签,仪链接页 面必需的CSS、JavaScript和图片文件。HTML5也可以住表 提交 等基本网页交互场景中对用户做出反馈,通过创建更为简洁、高 效的代码,很大程度上减少代码冗余,提高设备运行效率。较之 HTML4.0.1,HTML5做出了极大的改进,提供了更多、更加语义 化的新特性。CSS3的媒体查咖更是响应式设计不可或缺的组成部 分。HTML5具有较好的可移植性.适用于多个操作系统干I】主流浏 览器,节省开发团队的时间成本 人 成本。 3.2响应式Web设计基本规则 响应式页面殴计的基本规则: (1)内容区块可伸缩:内容 块的在一定程度j二能够自动调 整,以确保填满整个页面; (2)内容 块可调整位置:当页面 寸变动车立J(时,能够减 少或增加布局的列数; (3)边距能适应页面尺寸:到页面尺 发 }i更大变化时,区 块的边距也应该变化; (4)图片能适应比例变化:对于常见的宽度调整,图 在隐 去两侧部分时,依旧保持美观可用: (5)内容能自动隐藏或部分鼎示:如在电腑 ^示的火段描 述文本,在手机上就只少量显示或全部隐藏: (6)导航和菜单能自动折叠:展开还是收起,应该根据页面 尺寸来判断。
电早世界 -79・ ELECTR0NICS W0RLD・朔 葵 琴露 察 3.3响应式Web设计实现方法 (1)媒体查询与流体布局 CSS3中的媒体查询(Media Query)是实现响应式页面设计的 关键之一,它根据分辨率宽度的变化来调整页面布局结构。但仅使 用媒体查询来调整页面范围的话,中间没有经过平滑过渡,变化较 突兀。媒体查询与流体布局相结合是一种很好的解决方式。 以父级容器宽度为固定960px的页面示例。页面的主要布局 结构用更加语义化的HTML5标签来实现,包括页头、主要内容部 分、侧边栏和页脚。 对桌面电脑而言,960px适用于任何宽于1024像素的分辨率。 通过媒体查询来监测宽度小于960px的屏幕分辨率,并设置流体布 局宽度,意即布局元素的宽度可随浏览器窗口的尺寸变化进行调 整。当可视部分的宽度进一步减d" ̄1650px下时,主要内容部分 的容器宽度会增大至全屏,而侧边栏将被置于主内容部分的下方, 整个页面变为单栏布局。 当浏览器可视区域宽度大于650pxd ̄于960px时,媒体查询与 流体布局相结合:将pagewrap的宽度设置为95%;将content的宽度 设置为60%;将sidebar的宽度设置为30%。当浏览器可视部分宽度 小于650px时,布局采用单栏方式:将header的高度设置为auto;将 main.nav、site—logo、site.description的定位设置为static;将content 和sidebar的宽度设置为auto,并取消float设置。当浏览器可视部分 宽度小于48Opx时,禁用html节点的字号自动调整。 需注意的是,对于那些尚不支持媒体查询的浏览器,需在页面 中调用css3 mediaqueries.js。 (2)弹性图片与文字 使用CSS3中的max.width和height:auto来实现图片弹性化。如设 置img{max.width:50%;height:auto;},可以使图片自动缩放到与其容 器按50%的比例匹配。图片本身的尺寸需比其显示尺寸大,以保证 渲染效果。最好给弹性图片加一个阈值,如一张图片的实际宽度为 100px,则可以设置img{width:50%;max—width:100px;},这样就可以 保证图片的自由缩放,而且也不会超出正常显示的范围。 为实现文字的自适应缩放,使用em替换px。em值是相对其父 级元素的字体大小而言的。公式为“目标元素尺寸÷父级元素尺寸
=百分比尺寸”,可将文字的绝对值尺寸转换为相对值尺寸。
4结语 随着互联网技术的飞速发展,阅读终端设备越来越多元化,相 应的屏幕尺寸千差万别。如何能够使用户在不同阅读终端上都能有 良好的视觉体验,是前端开发工程师不得不面对的重要课题。响应 式Web设计方式提供了一种有效的解决方案,通过对Web设计技术 的组合和提升,实现了任意阅读终端对网页布局及内容都能良好地 呈现,是未来Web设计技术发展的必然趋势。
参考文献 【1]Ethan Marcotte.Kesponsive Web Design[EB/O L】.http://www. alisapart.com/articles/responsive—web—design/.2010—05—25. 【2]Mickley Gillenwater.Flexible Web Design:Creating Liquid and Elastic Layou ̄with CSS[M].USA:New Riders,2009:285—312. 【3]Frain B.Responsive Web Design with HTML5 and CSS3[M]. Birmingham:Packt Pubhshing,2012:10—11. 【4】张树明.基于响应式Web' ̄-计的网页模板的设计与实现U]计 算机与现代化,2013,1(6):125—127. 【5】熊瑞英,王宁.响应式Webi ̄计Ⅱ1.科技创新导报,2015,12(26):64—65.
作者简介: 程荣贽(1984一),四川德阳人,硕士研究生,现就职于中国 东方电气集团有限公司。
(上接第78页) while(1) (if【butt0n一0) {delay(100); ifbuaon ̄0) f i”; ifi<99) {PO=seg7[i/lO]; P2:seg7[i%10】 ) else i=O: j } delay(3000); } delay()函数为延时子程序,主要用于控制数码管显示的频率。 共阴极数码管的数字显示值被保存在一个数组当中: seg7[IO]={Ox3 ̄Ox06,0x5b,0x4 ̄0x66,0x6d,0x7d,0x07,Ox7 ̄Ox6 ̄。 在Proteus软件中将Keil软件编译生成的HEX文件通过设定参数 的方式配置在单片机当中,启动仿真操作,可以验证单片机程序设 计的正确性。 相对于实验设备的硬件电路不容易修改,且硬件电路修改失误 容易造成实验失败而无法进行下去的缺点,软件仿真具有明显的优 势。学生可以任意修改电路,例如可以选择不同的IO接口作为输入 或者输出接口,比较P0 ̄P3接口的使用差异。学生也可以选择调 整单片机时钟工作频率,或者修改延时程序循环计数的范围,或者 通过调用单片机内部定时器中断实现精确延时等不同设计手段,再 ・80・电子世拜 运行仿真器,即可得到数码管不同的显示结果。通过这种方式可以 明显缩短单片机设计和调试的时间,学生通过分析和比较运行的结 果,也可以更快更好的掌握单片机所学的知识点。 Proteus软件中提供了丰富的仿真器件资源库,学生可以在掌握 基本应用的基础上,完成进一步的拓展训练。通过搭建更为复杂的 电路,拓宽了学生的知识领域,使学生的应用能力和创新能力得到 进一步提高。 4结论 在单片机课程教学过程中,采用Keil; ̄Proteus软件进行单片机 仿真,学生的学习兴趣显著提高。学生通过设计电路、软件编程 和模拟仿真对单片机的应用有了更加直观和深刻的认识,达到了事 半功倍的效果。同时,相对于硬件设备的投入、消耗和维护,利用 软件仿真性价比更高,使用更加灵活,学生在课余时间没有实验设 备的环境下也可以通过仿真进行学习和训练。在教学实践过程中, 通过Keil和Proteus软件的配合使用,学生的单片机应用能力明显提 高,教学效果显著,证明了在单片机课程学习中运用这种教学方法 和手段是合理和行之有效的。 参考文献 【1】陈忠平.基于Proteus的51系列单片机设计与仿真(第2版)【M】.北 京:电子工业出版社,2012. [2】徐广振,刘小莉.单片机技术应用项目化教程(c语言版)【M】.北 京:电子工业出版社,2016. 【3】邓柳,陈卉.C51单片机项目设计实践教程(第2版)『M】.北京:人 民邮电出版社.2015.