手记

17-7-15 响应式web设计---媒体查询@media

定义和使用
使用@media,可以针对不同媒体类型定义不同的样式
@media 媒体类型and (媒体特性)
{样式}
媒体类型
主要有三种Screen (电脑显示器)和 All(所有设备) 和 Print(打印机)为最常见的三种媒体类型
最大宽度max-width
是媒体类型小于或者等于指定的宽度时,样式生效
最小宽度min-width
是媒体类型大于或者等于指定的宽度时,样式生效

body{
  background-color:red;
}
@media screen and (max-width:300px){
body{
    background-color:blue;
     }  
}

当浏览器窗口小于300px ,时背景颜色为blue;

添加断点

/* For desktop: */
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}
@media only screen and (max-width: 768px) {
    /* For mobile phones: */
    [class*="col-"] {
        width: 100%;
    }
}

当屏幕 (浏览器窗口) 小于 768px, 每一列的宽度是 100%

移动优先
移动端优先意味着在设计桌面和其他设备时优先考虑移动端的设计

/* 为移动端设计: */
[class*="col-"] {
    width: 100%;
}
@media only screen and (min-width: 768px) {
    /* For desktop: */
    .col-1 {width: 8.33%;}
    .col-2 {width: 16.66%;}
    .col-3 {width: 25%;}
    .col-4 {width: 33.33%;}
    .col-5 {width: 41.66%;}
    .col-6 {width: 50%;}
    .col-7 {width: 58.33%;}
    .col-8 {width: 66.66%;}
    .col-9 {width: 75%;}
    .col-10 {width: 83.33%;}
    .col-11 {width: 91.66%;}
    .col-12 {width: 100%;}
}

其他断点
针对桌面,平板,手机

/* For mobile phones: */
[class*="col-"] {
    width: 100%;
}
@media only screen and (min-width: 600px) {
    /* For tablets: */
    .col-m-1 {width: 8.33%;}
    .col-m-2 {width: 16.66%;}
    .col-m-3 {width: 25%;}
    .col-m-4 {width: 33.33%;}
    .col-m-5 {width: 41.66%;}
    .col-m-6 {width: 50%;}
    .col-m-7 {width: 58.33%;}
    .col-m-8 {width: 66.66%;}
    .col-m-9 {width: 75%;}
    .col-m-10 {width: 83.33%;}
    .col-m-11 {width: 91.66%;}
    .col-m-12 {width: 100%;}
}
@media only screen and (min-width: 768px) {
    /* For desktop: */
    .col-1 {width: 8.33%;}
    .col-2 {width: 16.66%;}
    .col-3 {width: 25%;}
    .col-4 {width: 33.33%;}
    .col-5 {width: 41.66%;}
    .col-6 {width: 50%;}
    .col-7 {width: 58.33%;}
    .col-8 {width: 66.66%;}
    .col-9 {width: 75%;}
    .col-10 {width: 83.33%;}
    .col-11 {width: 91.66%;}
    .col-12 {width: 100%;}
}

方向:横屏landscape/竖屏portrait
语法:

orientation:portrait | landscape

如果是横屏背景将是浅蓝色

@media only screen and (orientation: landscape) {
    body {
        background-color: lightblue;
    }
}
7人推荐
随时随地看视频
慕课网APP