响应式布局学习总结

响应式布局其实就是技术的综合。如果对html5,css3,jquery比较熟悉的话,那么学习响应式布局非常简单。

响应式布局无非就是利用css3的新特性来使页面适应不同的分辨率,如电脑中的1024*768,800*600,手机的320*480等等屏幕分辨率。

如果我们要实现比较复杂的功能,例如bootstrap中的nav,我们需要借助jquery来实现相关操作。我们在开发响应式网站时,简单的可以自己定义样式,复杂的完全可以使用bootstrap。

响应式布局使用的css技巧主要有:
1.百分比。在设置元素的样式时,应使用百分比,而不是固定的数值,尤其是图片的缩放,更是使用百分比,如果需要可以设置max-width。百分比的计算公式为:

目标元素宽度 / 上下文元素宽度=百分比宽度

如将固定宽度

#wrap {
    width:960px;
}
#header{
    width:940px;
    margin-left:10px;
    margin-right:10px;
}
img{
    max-width:100%;
}

html

<div class="wrap">
<div class="header"></div>
</div>

改为百分比布局

#wrap {
    width:96%;
}
#header{
    margin-left:1.041666666%  /* 10/960 */
    margin-right:1.041666666% /* 10/960 */
    width:97.9166667%;  /*940/960*/
}

2.em替换px。em替换px主要应用于文字缩放。计算公式为

目标元素尺寸 / 上下文元素尺寸 = 百分比尺寸

例如将下面的元素px

#wrap{
    font-size:16px;
}
#content h1{
    font-size:69px;
}

浏览器默认字体是16px,所以可以改为:

#wrap{
    font-size:100%;
}
#content h1{
    font-size:4.3125em;   /* 69 / 16 */
}

3.媒体查询。这也是响应式查询的重点,页面之所以能适应不同的窗体大小,也是因为媒体查询。媒体查询理解起来非常简单,就是在不同的窗体下,定义不同的样式。例如:

/*窗体最大宽度960是执行*/
@media screen and (max-width:960px){
    body{
        background-color:red;
    }
    h1{
        font-size:14px;
    }
}
/*窗体最大宽度768是执行*/
@media screen and (max-width:768px){
    body{
        background-color:orange;
    }
    h1{
        font-size:12px;
    }
}
/*窗体最大宽度320是执行 手机*/
@media screen and (max-width:320px){
    body{
        background-color:green;
    }
    h1{
        font-size:10px;
    }
}

如果我们需要引用样式,可以在页面添加

<link rel="stylesheet" type="test/css" media="screen" href="样式表地址" />

4.响应式布局兼容性。手机浏览器都兼容响应式布局,电脑浏览器中最新浏览器支持。ie8以下浏览器不支持,升级也比较麻烦。网上也有技巧兼容ie8浏览器,不过我测试了一下,ie8下是妥协支持了,之所以说妥协,是因为有些效果也不支持,ie6,ie7基本都不支持。尤其是让我生气的是,ie8妥协支持了,在chrome中有些效果感觉变形了。哎,ie8浏览器还是放弃吧,毕竟是为手机用户开发。

响应式布局的开发基本上就是以上四点,在加上html5。html5是进行页面布局的。如果需要加些特效,这时就可以使用jQuery。

posted @ 2014-01-04 10:54  imlion  阅读(1032)  评论(0编辑  收藏  举报