scss-@media

  首先回顾下css3中的@mediacss

  定义和使用:css3

  使用 @media 查询,你能够针对不一样的媒体类型定义不一样的样式。web

  @media 能够针对不一样的屏幕尺寸设置不一样的样式,特别是若是你须要设置设计响应式的页面,@media 是很是有用的。浏览器

  当你重置浏览器大小的过程当中,页面也会根据浏览器的宽度和高度从新渲染页面。ide

  实例:若是文档宽度小于 300 像素则修改背景颜色(background-color):函数

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

 

  @media功能在scss和在css中基本同样,只是加强了一下。spa

  scss容许@media在css规则中进行嵌套,若是@media嵌套在CSS规则内,编译时,@media将被编译到文件的最外层,包含嵌套的父选择器,scss代码实例以下:设计

.sidebar {
  width: 300px;
  @media screen and (orientation: landscape) {
    width: 500px;
  }
}

  编译成css代码以下:code

.sidebar {
  width: 300px; 
}
@media screen and (orientation: landscape) {
  .sidebar {
    width: 500px; 
  } 
} 

  @media的queries容许互相嵌套使用,编译时,scss自动添加and。blog

  代码实例以下:

@media screen {
  .sidebar {
    @media (orientation: landscape) {
      width: 500px;
    }
  }
}

  编译后的css代码以下:

@media screen and (orientation: landscape) {
  .sidebar {
    width: 500px; 
  } 
}

  @media固然也能够使用scss中的变量、运算符以及函数,代码实例以下:

$media: screen;
$feature: -webkit-min-device-pixel-ratio;
$value: 1.5;
  
@media #{$media} and ($feature: $value) {
  .sidebar {
    width: 500px;
  }
}

  被编译后的css代码以下:

@media screen and (-webkit-min-device-pixel-ratio: 1.5) {
  .sidebar {
    width: 500px; 
  } 
}
相关文章
相关标签/搜索