利用@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、括号中的内容内容不能写结束符“;”,以及其它错误