@media
定义和使用
使用 @media 查询,你可以针对不同的媒体类型定义不同的样式。
@media 可以针对不同的屏幕尺寸设置不同的样式,特别是如果你需要设置设计响应式的页面,@media 是非常有用的。
当你重置浏览器大小的过程中,页面也会根据浏览器的宽度和高度重新渲染页面。
css中引入
@media screen and (max-width: 600px) {
/*当屏幕尺寸小于600px时,应用下面的CSS样式*/
.class {
background: #ccc;
}
}
/*当屏幕尺寸大于900px时,应用下面的CSS样式*/
@media screen and (min-width: 900px) {
.class {
background: #fff;
}
}
@media screen and (max-device-width:960px){
body{background:red;}
}
上面是在设备屏幕宽度小于等于960px时应用css样式。
混用:
@media screen and (min-width:960px) and (max-width:1200px){
body{background:yellow;}
}
表示浏览器宽度大于等于960px且小于等于1200px时使用样式。
参数
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:检测输出的设备是网格的还是位图设备。
(max-width:599px)
(min-width:600px)
(orientation:portrait) 竖屏
(orientation:landscape) 横屏
(-webkit-min-device-pixel-ratio: 2) 像素比
使用方法:
<div class="customContainer"></div>
.customContainer{
height: 40px;
margin: 0 auto;
background-color: rgb(236, 71, 71);
}
@media screen and (max-width: 768px){
.customContainer{
width: 100%;
}
}
@media screen and (min-width: 768px) and (max-width: 992px){
.customContainer{
width: 750px;
}
}
@media screen and (min-width: 992px) and (max-width: 1200px){
.customContainer{
width: 970px;
}
}