Responsive Web Design 简单介绍与优缺点、实作入门, 响应式设计
2014-03-13 15:25
946 查看
这一两年中最夯的网页设计不外乎就是Responsive Web Design 了,中文译名为「自适应网页设计」(不过这个名称仍然不太好),就字面上意思来说就是当一个网页在不同的解析度下,会呈现不同的介面,也就是在不同的介面上适应。
会这么热门的原因是,这几年来随着Smart Phone、Tablet 等行动装置开始兴起之后,有许多人都开始使用行动装置来阅读网页。
而传统的网页只有为传统PC 做设计的动作,在行动装置上并不能呈现最好的效果,所以就有了Responsive Web Design 这个网页设计新名词。
如以下的例子,我们用Smashing
Magazine的网站来做示范:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/29/4fe5145315800dd04b478b0d621292ec.jpg)
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/29/3d1817368b59d9745ef5148a861d5eda.jpg)
上面两个显示不同,但是却是同一份HTML 网页,使用CSS Media Query 做调整,就是Responsive Web Design。
如果这个网站没有做Responsive Web Design,那他的显示方法会和传统PC 一样,造成User 还要把网页拉大才能阅读。
而做Responsive Web Design 最大的目的是:
因为越来越多人要用手机、平板来浏览网页。
是的,Responsive Web Design 就是因为这样而生的,为了要让手机、平板的User 有更好的体验。
开发成本比Native App低 因为Responsive Web Design 通常可以直接用Media Query 直接写搭配行动装置的CSS ,与Native App 的成本比较下来较低。
不需要重写HTML Responsive Web Design 不需要再重写另一份HTML ,直接使用CSS 属性来对不同装置做调整即可。
可以同时针对许多不同装置分别调整 通 常做都是利用CSS3 的Media Queries 方法来实现,而你可以使用这项CSS 来对许多装置做设计,不论是萤幕小到不行的入门款Smart Phone、萤幕大的Galaxy Note、解析度超高的iPad、轻巧的Google Nexus 7 都可以做Responsive Web Design 。
缺点:
载入速度的问题 <br />因为是使用同一份的HTML & CSS ,所以不管User在手机上或者在PC上,要浏览的网页都是同一份网页,当然速度也是会一样。
但是手机上做Responsive Web Design 会把页面做到非常简单,但也只是把元素隐藏,事实上载入速度并不会变快。
在Mobile上,要再花心思做设计 <br />很显然的在手机上User的浏览是与在传统PC上是完全不一样的,所以如果要有一个好的Mobile User Experience的话,你就必须针对Mobile 这块去下功夫看怎样的动线阅读流程才是最好的。
为了让传统PC 的1280*768 ~ 1920*768 和Mobile 的480*320 都有最好的显示效果,Responsive Web Design 是个很好的解决方案。
通常,Responsive Web Design 有这三项重点必须注意:
有弹性、可适应不同装置的网页版面
有弹性、可适应不同装置的图片、多媒体尺寸
使用CSS3 Media Queries
我们就可以直接使用Grid 网格系统,能让开发过程变得很快。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/29/36722725f4e6a9338272bc88431b51b5.jpg)
至于Fluid Grid System 就是把原本用像素去定义的宽度变成使用比例(百分比)的方式去呈现。
比如说原本一个Sidebar 要width : 240px ,现在就可以改写成width : 20% 。
这点,可以让Responsive Web Design 比较方便。
而CSS 中的max-width 提供了解决方案,这个属性能够让原本一个假设700px 的图片,在手机中显示刚刚好占满手机的宽度,而高度就随着宽度做等比例缩小。
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201308/4634e5a695985ec0a1e54fe61e36eb34.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201409/925a194438bdd6e4bf6c89525734f9cc.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201308/b3bc1fa49723fb763a93f93e0983efd1.gif)
img {
height: auto;
max-width: 100%;
}
如果你想看加上这段的效果,你可以在阅读本站文章的时候,把浏览器的宽度缩小(缩到宽度比图片小),你就会发现图片会变得越来越小。
而没有加上这句的话,则不会一起变小,而是超出浏览器。
由于图片Load 还是使用同一张图片,所以会有效能差的问题,虽然的问题在国外有人提出解决方案,不过这个比较复杂就不提了,可自行搜寻。
使用Media Queries ,能够让某块区域在PC 上是显示的,而在Mobile 中是隐藏的。
而这个判断机制通常我们是使用浏览的宽度来做判断,像Mobile 的宽度大约3、400左右,而传统PC 的宽度解析大概都是1366 以上,利用这个差异就可以写出符合不同宽度的Media Queries来。
我的Media Queries教学文章:
CSS3 Media Queries详细介绍与使用方法,Responsive Web Design必备技术
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201308/4634e5a695985ec0a1e54fe61e36eb34.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201409/925a194438bdd6e4bf6c89525734f9cc.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201308/b3bc1fa49723fb763a93f93e0983efd1.gif)
// 在 PC 上的顯示
.box {
width: 500px;
}
// Media Query ,也就是當寬度 < 767 px 時將載入下面這段 CSS :
@media (max-width: 767px) {
.box {
width: 100%;
}
}
如果你也是一个html & css Designer ,我想学习Responsive Web Design 是非常划算又容易的,因为它具有能跨不同装置的一个很大的优点。
Media Queries教学文章:
CSS3 Media Queries详细介绍与使用方法,Responsive Web Design必备技术
(部分想法来自:
EZTABLE 、
BoBochao )
来源:乐在设计 >
Responsive Web Design 簡單介紹與優缺點、實作入門
会这么热门的原因是,这几年来随着Smart Phone、Tablet 等行动装置开始兴起之后,有许多人都开始使用行动装置来阅读网页。
而传统的网页只有为传统PC 做设计的动作,在行动装置上并不能呈现最好的效果,所以就有了Responsive Web Design 这个网页设计新名词。
什么是Responsive Web Design?
简单来说,就是让一个网页在PC、Mobile 上都可以有好的浏览效果,而这个我们就称为Responsive Web Design。如以下的例子,我们用Smashing
Magazine的网站来做示范:
传统PC 浏览器显示
如下图,如果是解析度较大如1920*1080 的解析度,会有4 栏来丰富网页版面,增强效果。![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/29/4fe5145315800dd04b478b0d621292ec.jpg)
Mobile 手机上显示
因为手机的解析度比起传统PC 小很多,所以显示的方式只有显示主要内容区了。![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/29/3d1817368b59d9745ef5148a861d5eda.jpg)
上面两个显示不同,但是却是同一份HTML 网页,使用CSS Media Query 做调整,就是Responsive Web Design。
如果这个网站没有做Responsive Web Design,那他的显示方法会和传统PC 一样,造成User 还要把网页拉大才能阅读。
为什么要做Responsive Web Design?
Responsive Web Design 在目前算是很新的一项设计,在台湾知道的人并不算太多,学校也没有教。而做Responsive Web Design 最大的目的是:
因为越来越多人要用手机、平板来浏览网页。
是的,Responsive Web Design 就是因为这样而生的,为了要让手机、平板的User 有更好的体验。
Responsive Web Design 的优缺点
优点:开发成本比Native App低 因为Responsive Web Design 通常可以直接用Media Query 直接写搭配行动装置的CSS ,与Native App 的成本比较下来较低。
不需要重写HTML Responsive Web Design 不需要再重写另一份HTML ,直接使用CSS 属性来对不同装置做调整即可。
可以同时针对许多不同装置分别调整 通 常做都是利用CSS3 的Media Queries 方法来实现,而你可以使用这项CSS 来对许多装置做设计,不论是萤幕小到不行的入门款Smart Phone、萤幕大的Galaxy Note、解析度超高的iPad、轻巧的Google Nexus 7 都可以做Responsive Web Design 。
缺点:
载入速度的问题 <br />因为是使用同一份的HTML & CSS ,所以不管User在手机上或者在PC上,要浏览的网页都是同一份网页,当然速度也是会一样。
但是手机上做Responsive Web Design 会把页面做到非常简单,但也只是把元素隐藏,事实上载入速度并不会变快。
在Mobile上,要再花心思做设计 <br />很显然的在手机上User的浏览是与在传统PC上是完全不一样的,所以如果要有一个好的Mobile User Experience的话,你就必须针对Mobile 这块去下功夫看怎样的动线阅读流程才是最好的。
为了让传统PC 的1280*768 ~ 1920*768 和Mobile 的480*320 都有最好的显示效果,Responsive Web Design 是个很好的解决方案。
通常,Responsive Web Design 有这三项重点必须注意:
有弹性、可适应不同装置的网页版面
有弹性、可适应不同装置的图片、多媒体尺寸
使用CSS3 Media Queries
Responsive Web Design 的实作方式
由于Responsive Web Design 实作的方式有几种,所以这篇文章我们先来整理一下,往后的文章再详细介绍使用方法。CSS Grid System 与CSS Fluid Grid System 网页版面
Grid 这个字有「格」的意思,没错,Gird System 就是把网页变成有规则性大小的格子,我们以Bootstrap 的Grid System 来看,总共有12 种栏宽,从大到小都有。我们就可以直接使用Grid 网格系统,能让开发过程变得很快。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202009/29/36722725f4e6a9338272bc88431b51b5.jpg)
至于Fluid Grid System 就是把原本用像素去定义的宽度变成使用比例(百分比)的方式去呈现。
比如说原本一个Sidebar 要width : 240px ,现在就可以改写成width : 20% 。
这点,可以让Responsive Web Design 比较方便。
CSS Image max-width (Flexible image)调整图片
这个很常用。 在传统PC 上,我们的图片像素通常都远大于在Mobile 上的最大解析度,所以如果没有做任何调整,在看图片上的体验会比较差,简单来说就是图片会爆出浏览区域。而CSS 中的max-width 提供了解决方案,这个属性能够让原本一个假设700px 的图片,在手机中显示刚刚好占满手机的宽度,而高度就随着宽度做等比例缩小。
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201308/4634e5a695985ec0a1e54fe61e36eb34.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201409/925a194438bdd6e4bf6c89525734f9cc.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201308/b3bc1fa49723fb763a93f93e0983efd1.gif)
img {
height: auto;
max-width: 100%;
}
img { height: auto; max-width: 100%; }
如果你想看加上这段的效果,你可以在阅读本站文章的时候,把浏览器的宽度缩小(缩到宽度比图片小),你就会发现图片会变得越来越小。
而没有加上这句的话,则不会一起变小,而是超出浏览器。
由于图片Load 还是使用同一张图片,所以会有效能差的问题,虽然的问题在国外有人提出解决方案,不过这个比较复杂就不提了,可自行搜寻。
CSS3 Media Queries
再来就是CSS3 Media Query 的部分了,Media Queries算是在Responsive Web Design 中最容易被提起也最重要的一个部分。使用Media Queries ,能够让某块区域在PC 上是显示的,而在Mobile 中是隐藏的。
而这个判断机制通常我们是使用浏览的宽度来做判断,像Mobile 的宽度大约3、400左右,而传统PC 的宽度解析大概都是1366 以上,利用这个差异就可以写出符合不同宽度的Media Queries来。
我的Media Queries教学文章:
CSS3 Media Queries详细介绍与使用方法,Responsive Web Design必备技术
Html代码
![](https://oscdn.geek-share.com/Uploads/Images/Content/201308/4634e5a695985ec0a1e54fe61e36eb34.gif)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201409/925a194438bdd6e4bf6c89525734f9cc.png)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201308/b3bc1fa49723fb763a93f93e0983efd1.gif)
// 在 PC 上的顯示
.box {
width: 500px;
}
// Media Query ,也就是當寬度 < 767 px 時將載入下面這段 CSS :
@media (max-width: 767px) {
.box {
width: 100%;
}
}
// 在 PC 上的顯示 .box { width: 500px; } // Media Query ,也就是當寬度 < 767 px 時將載入下面這段 CSS : @media (max-width: 767px) { .box { width: 100%; } }
小结
Responsive Web Design 是一个不难的一项技能,事实上这个只要多练习,你就可以发现Responsive Web Design 其实是一个很有趣的东西,他可以随着宽度而有不同的显示方式。如果你也是一个html & css Designer ,我想学习Responsive Web Design 是非常划算又容易的,因为它具有能跨不同装置的一个很大的优点。
Media Queries教学文章:
CSS3 Media Queries详细介绍与使用方法,Responsive Web Design必备技术
(部分想法来自:
EZTABLE 、
BoBochao )
来源:乐在设计 >
Responsive Web Design 簡單介紹與優缺點、實作入門
相关文章推荐
- 响应式设计(responsive web design)的视图显示法
- [笔记]html5+css3 响应式设计(RWD,Responsive Web Design)
- 响应式网页设计-responsive web design
- 85个优秀的响应式网页设计(Responsive Web Design)作品范例
- 85个优秀的响应式网页设计(Responsive Web Design)作品范例
- 85个优秀的响应式网页设计(Responsive Web Design)作品范例
- 自适应网页设计(Responsive Web Design)
- 自适应网页设计(Responsive Web Design)
- 自适应网页设计(Responsive Web Design)
- 自适应网页设计(Responsive Web Design)
- 响应式网页设计(Responsive web design)入门级定义
- 自适应网页设计(Responsive Web Design)(转)
- 自适应网页设计(Responsive Web Design)
- 自适应网页设计(Responsive Web Design)
- 自适应网页设计(Responsive Web Design)
- 自适应网页设计(Responsive Web Design)
- 自适应网页设计(Responsive Web Design)
- 阮一峰:自适应网页设计(Responsive Web Design)别名(响应式web设计)
- 自适应网页设计(Responsive Web Design)
- 自适应网页设计(Responsive Web Design)