怎样实现响应式布局?

对于这个问题,我们可以通过CSS3中的Media Query来实现,即媒介查询。媒体查询让CSS可以更精确作用于不同的媒体类型和同一媒体的不同条件。媒体查询的大部分媒体特性都接受min和max用于表达"大于或等于"和"小与或等于"。如:width会有min-width和max-width媒体查询可以被用在CSS中的@media和@import规则上,也可以被用在HTML和XML中。通过这个标签属性,我们可以很方便的在不同的设备下实现丰富的界面,特别是移动设备,将会运用更加的广泛。

首先我们要允许网页宽度自动调整

在网页代码的头部,加入一行viewport元标签:

<meta name="viewport" content="width=device-width, initial-scale=1" />

 下面通过Media Query我们可以得到不同设备屏幕的宽和高,从而我们就可以分别处理了。根据不同的设备屏幕宽度,设置不同的CSS。那么这里有两种方法:

1、外联样式表

在这里我们可以根据不同的设备载入不同的CSS样式表

<linkrel="stylesheet"type="text/css"media="screen and (min-width:960px)"href="css/gt-960px.css">

  当页面宽度大于等于960px时,载入样式表gt-960px.css

<linkrel="stylesheet"type="text/css"media="screen and (min-width:600px) and (max-width:960px)"href="css/gt-600px-lt-960px.css">

当页面宽度大于等于600px且小于等于960px时,载入样式表gt-600px-lt-960px.css

<linkrel="stylesheet"type="text/css"media="screen and (max-width:600px)"href="css/lt-600px.css">

当页面宽度小于等于600px时,载入样式表lt-600px.css

2、样式表中内嵌法

当页面宽度大于等于960px时

@media screenand (min-width:960px){

    .header,

    .container,

    .footer{

        width:960px;

    }

    .sidebarLeft,

    .main,

    .sidebarRight{

        float:left;

        height:400px;

    }

    ...

}

当页面宽度大于等于600px且小于等于960px时

@media screenand (min-width:600px) and (max-width:960px){

    .header,

    .container,

    .footer{

        width:600px;

    }

    .sidebarLeft,

    .main{

        float:left;

        height:400px;

    }

    ...

}

当页面宽度小于等于600px时

 

@media screenand (max-width:600px){

    .header,

    .container,

    .footer{

        width:400px;

    }

    .sidebarLeft,

    .sidebarRight{

        width:400px;

        height:100px;

    }

    ...

}

弹性图片

我们需要为图片设置max-width: 100%和height: auto,来实现其弹性化。

img {

    max-width: 100%;

    height: auto;

    width: auto9; /* ie8 */

}

div css 自适应的更多相关文章

  1. DIV+CSS自适应窗口高度

    <html> <head> <title>DIV+CSS自适应窗口高度</title> <style type="text/css&qu ...

  2. DIV+CSS自适应布局

    自适应布局分两类:高度和宽度,方法有很多,我用三列布局举例,我就列几个通俗易懂的例子呗,懂了三列的,两列的原理一样,呵呵哒. 效果图如下:高度自适应——宽度自适应            1,高度自适应 ...

  3. DIV+CSS 自适应布局

    两栏布局,左边定宽200px,右边自适应.如何实现?我的第一个反应就是:用flex伸缩盒呀,然后balabala...说完之后,面试官说,还有没有别的方法?flex有些浏览器不支持嗯...我愣了一下, ...

  4. DIV+CSS左右列高度自适应问题

    其实解决DIV+CSS左右两列高度自适应的方法就是要注意两点:一是在最外层加上overflow:hidden,然后在左边列加上margin-bottom:-9999px;padding-bottom: ...

  5. DIV+CSS左右两列自适应高度的方法

    我们在用DIV+CSS布局网页的时候,必然会遇到左右两列自适应高度的问题,就是左边列的背景会随着右边列内容的增加也相应的增加高度,下面就教大家DIV+CSS左右两列自适应高度的方法. 下面给出最终的效 ...

  6. DIV+CSS布局中自适应高度的解决方法

    div乱跑问题  (文件<DIV+CSS布局中自适应高度的解决方法.rar>)   float 是个很危险的东西 得小心使用 本来有一很好的关于CSS+DIV的论坛 不过现在关门了 甚是可 ...

  7. CSS实现DIV水平自适应居中

    DIV水平自适应居中 <!DOCTYPE html> <html lang="cn"> <head> <meta charset=&quo ...

  8. CSS实现div高度自适应

    1.有时候,我们希望容器有一个固定高度,但当其中的内容多的时候,又希望高度能够自适应,也即容器在纵向能被撑开,且如果有背景,也能够自适应.在一般情况下,使用min-height即可解决.但是广大网民的 ...

  9. DIV+CSS布局中主要CSS属性介绍

    Float: Float属性是DIV+CSS布局中最基本也是最常用的属性,用于实现多列功能,我们知道<div>标签默认一行只能显示一个,而使用Float属性可以实现一行显示多个div的功能 ...

随机推荐

  1. golang调用c++文件

    简要步骤: 1,将c++ 的方法提取到头文件.h中( ) 2,编译cc(c++)文件为动态链接库so文件 3,将头文件放入include目录 .so放入lib目录 4,go程序中指定 CFLAGS 和 ...

  2. GoLang几种读文件方式的比较

    GoLang提供了很多读文件的方式,一般来说常用的有三种.使用Read加上buffer,使用bufio库和ioutil 库. 那他们的效率如何呢?用一个简单的程序来评测一下: package main ...

  3. css3知识

    一.box-sizing 属性 规定两个并排的带边框的框 二.align-items (适用于父类容器上) 设置或检索弹性盒子元素在侧轴(纵轴)方向上的对齐方式. 值: flex-start:弹性盒子 ...

  4. Android 自定义spinner下拉框实现

    一:前言本人参考博客:http://blog.csdn.net/jdsjlzx/article/details/41316417 最近在弄一个下拉框,发现Android自带的很难实现我的功能,于是去网 ...

  5. EasyUI树和Ztree树冲突问题

    1.今天做项目的时候出现了如下的错误. 报错:TypeError: $(...).tree is not a function 代码如下: 这是EasyUI的页面部分 $(function(){ $( ...

  6. freemarker页面如何获取绝对路径basePath

    1. freemarker获取系统相对路径方式 spring-mvc.xml 中配置 <!-- FreeMarker视图解析 如返回userinfo..在这里配置后缀名ftl和视图解析器.. - ...

  7. Oracle数据库相关问题之ORA-12541:TNS:无监听程序

    在用PL/SQL Developer等客户端工具连接oracle服务器时出现ORA-12541:TNS:无监听程序的错误,如下图: 发现原来是oracle的监听没有启动,重启监听后就连接成功了,下面跟 ...

  8. socket编程进阶

    1.   动态导入模块 第一种方法(python解释器自己内部用的): 上图是我程序的目录结构 下面代码是动态导入模块3.py的源码: #AUTHOR:FAN lib_dir = __import__ ...

  9. CSS4

    1.处理溢出(overflow) overflow的取值可以是visible.hidden,scroll,auto,其中visible是默认值.visible表示不裁剪内容,也不添加滚动条,强制显示元 ...

  10. html 关键字设定

    <meta name="description" content="仡家油茶仡家油茶仡家油茶仡家油茶"> <meta name="k ...