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