# 利用 @media screen 实现网页布局的自适应

优点:无需插件和手机主题,对移动设备友好,能够适应各种窗口大小。只需在 CSS 中添加 @media screen 属性,根据浏览器宽度判断并输出不同的长宽值


1280 分辨率以上(大于 1200px)

@media screen and (min-width:1200px){
    #page{ width: 1100px; }#content,.div1{width: 730px;}#secondary{width:310px}
}

1100 分辨率(大于 960px,小于 1199px)

@media screen and (min-width: 960px) and (max-width: 1199px) {
    #page{ width: 960px; }#content,.div1{width: 650px;}#secondary{width:250px}select{max-width:200px}
}

880 分辨率(大于 768px,小于 959px)

@media screen and (min-width: 768px) and (max-width: 959px) {
    #page{ width: 900px; }#content,.div1{width: 620px;}#secondary{width:220px}select{max-width:180px}
}

720 分辨率(大于 480px,小于 767px)

@media only screen and (min-width: 480px) and (max-width: 767px){
    #page{ width: 450px; }#content,.div1{width: 420px;position: relative; }#secondary{display:none}#access{width: 450px; }#access a {padding-right:5px}#access a img{display:none}#rss{display:none}#branding #s{display:none}
}

440 分辨率以下(小于 479px)

@media only screen and (max-width: 479px) {
    #page{ width: 300px; }#content,.div1{width: 300px;}#secondary{display:none}#access{width: 330px;} #access a {padding-right:10px;padding-left:10px}#access a img{display:none}#rss{display:none}#branding #s{display:none}#access ul ul a{width:100px}
}

# @media screen and 不起作用原因汇总

1、格式书写错误,and 前后需加空格,如:

@media screen and (max-width: 768px)

2、样式冲突:@media 查询代码被后面的 CSS 代码覆盖

建议卸载 CSS 代码最后面,以免被前面的 CSS 代码覆盖

3、忘记加 meta:meta 属性 viewport 属性,这个虽然基本常识,应该也会有人漏掉

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

4、括号中的内容内容不能写结束符 “;”,以及其它错误