一 设置Meta标签
首先我们在使用Media的时候需要先设置下面这段代码,来兼容移动设备的展示效果:
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
这段代码的几个参数解释:
• width = device-width:宽度等于当前设备的宽度
• initial-scale:初始的缩放比例(默认设置为1.0)
• minimum-scale:允许用户缩放到的最小比例(默认设置为1.0)
• maximum-scale:允许用户缩放到的最大比例(默认设置为1.0)
• user-scalable:用户是否可以手动缩放(默认设置为no,因为我们不希望用户放大缩小页面)
二 hack
? 1. <!--[if lt IE 9]><script src="js.js "></script><![endif]-->
(1): 小于IE9 需要有个默认的class,这个要怎么加,IE9以上的不需要这个默认class,加这个class的时机?
? 2. 用css Hack 解决
body {
background: red;
}
/* IE6、IE7变成绿色 */
@media all\9 {
body {
background: green;
}
}
/* IE8变成蓝色 */
@media \0screen {
body {
background: blue;
}
}
/*IE9和IE10变成黄色*/ 没有必要IE9以上以支持
@media screen and (min-width:0\0) {
body {
background: yellow; }
}
三 Media所有参数汇总
• width:浏览器可视宽度。
• height:浏览器可视高度。
• device-width:设备屏幕的宽度。
• device-height:设备屏幕的高度。
• orientation:检测设备目前处于横向还是纵向状态。
• aspect-ratio:检测浏览器可视宽度和高度的比例。(例如:aspect-ratio:16/9)
• device-aspect-ratio:检测设备的宽度和高度的比例。
• color:检测颜色的位数。(例如:min-color:32就会检测设备是否拥有32位颜色)
• color-index:检查设备颜色索引表中的颜色,他的值不能是负数。
• monochrome:检测单色楨缓冲区域中的每个像素的位数。(这个太高级,估计咱很少会用的到)
• resolution:检测屏幕或打印机的分辨率。(例如:min-resolution:300dpi或min-resolution:118dpcm)。
• grid:检测输出的设备是网格的还是位图设备。
四 CSS3 Media width写法
当浏览器尺寸小于960px
@media screen and (max-width: 960px){
body{
background: #000;
}
}
当浏览器尺寸等于960px
@media screen and (max-device-width:960px){
body{
background:red;
}
}
当页面宽度大于960px
@media screen and (min-width:960px){
body{
background:orange;
}
}
我们还可以混合使用上面的用法:当页面宽度大于960px小于1200px的时候执行下面的(这次开放平台会用到这个)
@media screen and (min-width:960px) and (max-width:1200px){
body{
background:yellow;
}
}
五 相关媒体查询案例(感兴趣可以看看)
1. http://www.w3cplus.com/css3/media-queries-alistpart
2. http://www.w3cplus.com/css3/media-queries-tee-gallery
3. http://www.w3cplus.com/css3/media-queries-hicksdesign
如有不全或者更好的博文,欢迎大家勇于分享,谢谢!