响应式布局

来源:互联网 发布:淘宝客用什么软件 编辑:程序博客网 时间:2024/06/03 21:12

响应式布局(Responsive Layout)

做手机网站必加的一句头部(head)代码

<meta name="viewport" content="width=device-width, initial-scale=1.0,
minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">

name=”viewport” 名称=视图 width=device-width
页面宽度=设备宽度(可以理解为获取你手机的屏幕宽度) maximum-scale - 允许用户缩放到的最大比例
user-scalable - 用户是否可以手动缩放

如何建立响应式布局?

1、布局及设置meta标签

当创建一个响应式网站,或者非响应式网站变成响应式的时候,首先要关注元素的布局。我在创建响应式布局的时候习惯先写非响应式布局,页面固定宽度大小,我觉得这个对在座的各位没有任何难度。如果完成了非响应式那么我在去添加媒体查询(Media Query)和响应式代码。这种操作更容易实现响应式特性。

当你完成当你已经完成了无响应的网站,做的第一件事是在你的 HTML 页面,粘贴下面的代码到和标签之间。这将设置屏幕按1:1的尺寸显示,在 iPhone 和其他智能手机的浏览器提供网站全视图浏览,并禁止用户缩放页面。
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="HandheldFriendly" content="true">

user-scalable属性能够解决ipad切换横屏之后触摸才能回到具体尺寸的问题。

2.通过媒体查询来设置样式media query

media query 是响应式设计的核心,它能够和浏览器进行沟通,告诉浏览器页面如何呈现,假如一个终端的分辨率小于980px,那么可以这样写
@media screen and (max-width:980px){
#head { … }
#content { … }
#footer { … }

这里面的样式会覆盖掉之前所定义的样式。

3.设置多种视图宽度

假如我们要兼容ipad和iphone视图,我们可以这样设置:

/**ipad**/@media only screen and (min-width:768px)and(max-width:1024px){}/**iphone**/ @media only screen and (width:320px)and (width:768px){}

3.字体设置

到目前为止,开发人员用到的字体单位大部分都是像素,虽然像素在普通网站上是Ok的,但是我们仍然需要响应式字体。一个响应式的字体应关联它的父容器的宽度,这样才能适应客户端屏幕。
css3引入了新的单位叫做rem,和em类似但对于Html元素,rem更方便使用。

rem是相对于根元素的,不要忘记重置根元素字体大小:

html{font-size:100%;}完成后,你可以定义响应式字体:@media (min-width:640px){body{font-size:1rem;}}@media (min-width:960px){body{font-size:1.2rem;}}@media (min-width:1200px){body{font-size:1.5rem;}}

不理解rem的童鞋,在这里给大家推荐一篇写的不错的博客(http://www.cnblogs.com/YYvam1288/p/5123272.html)

原博参考http://www.cnblogs.com/dreamsboy/p/5656009.html
这里借鉴来学习