时间:2024-05-04
郭彦辉
(广州番禺职业技术学院 艺术设计学院,广东 广州 511483)
随着各类上网设备的发展和普及使用,用户使用智能手机、平板电脑、桌面电脑和笔记本电脑等设备访问网站的情况普遍。如何使网站内容在各种不同屏幕分辨率下保持良好的显示效果,并使用户获得良好的体验是需要关注和解决的问题。自从Ethan Marcotte提出响应式 Web设计(RWD,Responsive Web Design)[1]概念以来,其设计方法能够使同一网站兼容不同终端设备的访问,而不需要为每个终端定制开发相应的版本,可以有效降低网站开发的复杂性和维护的难度。这种设计方法对于高职院校的网站建设来说同样具有应用价值。本文以学校的招生信息网站改版设计为例,介绍该网站响应式设计实现的过程及技术要点。
广州番禺职业技术学院原招生信息网站由多个独立运行的子网站构成,这些子站面向的招生类型不同,先后独立规划设计、开发和管理。随着学校招生宣传和服务工作的推进,网站的内容与功能需求有所变化,需要重新规划设计与开发。为了便于今后对网站的统一管理与维护,同时,也为满足网站来自移动设备访问的需求,此次网站改版的内容主要包括两个方面:(1)将原有多个子站合并成为单独一个网站,并使用网站群系统来实现网站的后台管理功能,学校相关的招生信息将集中统一发布在该网站上。(2)采用响应式设计使网站能够兼容多种主流的终端设备,并且保持统一的设计风格。
在新版招生信息网站的规划中,对原先各子站的内容和功能模块进行调整合并,重新设计网站的信息架构和页面布局。新版网站主要包括招生计划、报考指南、招生咨询和录取查询等主要栏目内容。
以往进行网页设计时,会先以桌面电脑显示器分辨率作为参考进行固定宽度设计,再针对小屏幕进行内容重排。在响应式设计中,应该先针对小屏幕进行设计,再逐步增强针对大屏幕的设计和内容[2]。在智能手机这类小屏幕设备设计中,网站内容按照重要程度自上而下排列显示,内容元素和屏幕等宽,布局结构以竖向单列显示。布局随着设备屏幕尺寸变宽其结构也由单列变成多列形式,页面最宽时适合于桌面电脑的显示。网站首页页面设计简稿如图1所示。
图1 不同显示下的页面设计简稿Fig.1 Brief manuscript with different visual for webpage design
网站首页的html结构大致如下:
对于不支持
响应式Web设计的核心技术是使用CSS3的媒体查询(Media Queries)模块。媒体查询能够根据设备的视口宽度、屏幕的宽高比、设备方向(横向或纵向)等特性来改变页面内容的显示方式[3]。这里的视口是指网页在设备中实际显示的区域。通常,在响应式设计中使用媒体查询会根据主流设备的屏幕分辨率来设置断点(断点是指页面布局发生变化的临界点),然后在断点所划分的不同屏幕尺寸范围内定义相应的CSS样式来设计页面布局。例如以下代码:
@media only screen and (min-width: 768px){
/*CSS属性设置*/
}
以上表示当视口宽度大于等于768px时,执行相应的CSS样式来改变页面内容的显示方式。其中,媒体类型screen代表用于电脑显示器屏幕、平板电脑以及智能手机等设备,min-width是定义输出设备中的页面最小可见区域宽度。同时,为了使页面元素宽度会根据视口宽度自动调整,而且在媒体查询断点间能够平滑过渡,需要将页面所使用的固定像素转换为百分比作为单位。随着设备的更新换代,无法预测网站将会在哪种新设备上显示,而内容的显示不能只是在特定的设备屏幕上才最合适。在该网站中,通过观察内容在视口宽度变化下的显示效果,在页面布局不能适合内容显示的位置处设置断点, 即由内容来确定断点。
在空间有限的小屏幕上,应先考虑用户所需要的内容,其次才是导航。为了提升屏幕空间的利用率,避免网站导航在小屏幕上显示时占据过多的内容区域,采用内容优先于导航的方式进行设计[4-5],让用户能够更快地获取页面内容。在小屏幕上,网站主导航以一个图标显示并放置于屏幕右侧上方,用户通过点击导航图标来控制导航项的展开或隐藏显示,其显示效果与交互方式运用 jQurey与 CSS来实现。在有足够空间的大屏幕上,该网站主导航是以水平方式显示的,并放置于页面的头部。通过对主导航在不同屏幕空间上的处理,让用户能够方便有效地使用导航来浏览网站内容。
在响应式设计中,应让浏览器能够根据显示设备的分辨率来加载相应的图片。对于移动设备来说加载与其相匹配的图片,有利于节省流量和缩短加载时间,从而改善用户体验。在该网站中,采用的一种解决方式是使用标签的srcset和sizes属性来实现响应式图片。srcset属性指定多个用逗号分隔的图片源,每张图片的宽度都使用w描述符来表示。sizes属性描述了根据视口而变化的图片尺寸[6-7]。浏览器根据这两个属性所提供的信息来选择合适的图片显示。类似代码如下:
图2 网站首页在不同设备上的显示效果Fig.2 The visual effect of the homepage across various device
该代码表示当视口宽度大于等于1000像素时,图片宽度为640像素,当视口宽度小于1000像素时,图片宽度为320像素。对不支持srcset属性的浏览器,加载显示src指定的图片。
另外,显示在网站中的图标文件使用了 SVG格式。SVG是可缩放矢量图形(Scalable Vector Graphics)的简称,它使用XML格式定义图形[8]。放大或改变 SVG图像尺寸并不会降低图像质量,因此不需要为不同的分辨率创建单独的图像。在页面中把 SVG文件作为背景图像的方式插入,类似代码如:
.icon {
background-image:
url(images/icon.png);background-image:
url(images/icon.svg),none;
}
在该CSS样式中对于不支持SVG的浏览器会加载PNG格式的图片。
如果网页没有设置viewport的属性值时,移动浏览器就将其按比例缩放以适应移动设备屏幕显示,这样用户在浏览时还需调整页面,非常不便。因此,需要禁止移动浏览器自动调整页面大小。在HTML的
部分添加以下代码:,这样浏览器将会按照设备实际宽度来渲染页面。在开发过程中,主要使用 Chrome的开发者工具来进行调试,它可以模拟不同移动设备的屏幕分辨率来测试响应式设计的效果,也支持自定义不同的分辨率来进行测试。此外,还使用真实的移动设备和各种主流的浏览器对网站进行测试,来获得真实的效果和体验。网站首页在不同上网设备中的显示效果如图2所示。
该网站采用响应式 Web设计方法,运用HTML5和 CSS3等技术实现响应式页面,并使用网站群系统实现网站信息发布及后台管理功能。网站经过一次开发能够跨设备平台运行,在不同设备中呈现的信息内容同源,能够同步更新信息内容,并为用户提供友好的界面,让用户在移动设备上获得良好体验。相对于为该网站开发针对不同设备的版本,采用响应式设计在开发、维护、扩展性等方面具有一定的优势。响应式设计为实现网站移动化提供了一种新的设计策略和选择。随着响应式设计技术的不断发展与完善,其受到关注与应用也将会越来越多。
[1] Ethan Marcotte. Responsive Web Design[J/OL].(2010-05-25).http://alistapart.com/article/responsive-web-design.
[2] Ben Frain. 响应式Web设计: HTML5和CSS3 实战[M]. 北京: 人民邮电出版社, 2013.
[3] Luke Wroblewski. 移动优先[M]. 北京: 人民邮电出版社,2014.
[4] 张幸芝, 徐东东, 贾菲. 基于响应式Web设计的教务系统移动平台研究与建设[J]. 软件, 2013, 34(6): 5-7.
[5] Jason Grigsby. Responsive Images 101, Part 4:Srcset Width Descriptors[EB/OL]. (2015-03-19).https://cloudfour.com/thinks/responsive-images-101-part-4-srcset-width-descriptors.
[6] Jason Grigsby. Responsive Images 101, Part 5:Sizes[EB/OL].(2015-03-20).https://cloudfour.com/thinks/responsive-images-101-part-5-si zes.
[7] W3school.SVG教程[EB/OL]. http://www.w3school.com.cn/svg/index.asp.
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!