当前位置:首页 >> 网页制作

CSS框架sass的简单一览

sass结尾的文件有着更严格的格式要求,scss文件更贴近原生css

比如sass文件

CSS Code复制内容到剪贴板
  1. #main    
  2.   color: #fff  
  3.   &-sidebar   
  4.     border: 1px solid  

等同于scss的

CSS Code复制内容到剪贴板
  1. #main {   
  2.   color: black;   
  3.   &-sidebar { border: 1px solid; }   
  4. }  

编译后为

其中代表父级元素的& 只可出现在头部,否则解析不出来。
嵌套属性

CSS Code复制内容到剪贴板
  1. .funky {   
  2.   font: {   
  3.     family: fantasy;   
  4.     size: 30em;   
  5.     weight: bold;   
  6.   }   
  7. }  

编译为

CSS Code复制内容到剪贴板
  1. .funky {   
  2.   font-family: fantasy;   
  3.   font-size: 30em;   
  4.   font-weight: bold; }  

这个在一些复杂的css3属性上用处比较大,比如animate
字符串内插

使用#{}作为选择器变量

CSS Code复制内容到剪贴板
  1. $name: foo;   
  2. $attr: border;   
  3. p.#{$name} {   
  4.   #{$attr}-color: blue;   
  5. }   
  6.   
  7. p {   
  8.   $font-size: 12px;   
  9.   $line-height: 30px;   
  10.   font: #{$font-size}/#{$line-height};   
  11. }  

第二个例子如果不用字面量则12除30
运算符

CSS Code复制内容到剪贴板
  1. p {   
  2.   width: 1in + 8pt;   
  3. }  

单位如果可以转换,会被自动转换
编译为:

CSS Code复制内容到剪贴板
  1. p {   
  2.   width: 1.111in; }   
  3.   
  4. p {   
  5.   font: 10px/8px;             // Plain CSS, no division   
  6.   $width: 1000px;   
  7.   width: $width/2;            // Uses a variable, does division   
  8.   width: round(1.5)/2;        // Uses a function, does division   
  9.   height: (500px/2);          // Uses parentheses, does division   
  10.   margin-left: 5px + 8px/2px; // Uses +, does division   
  11. }  

直接字面量,变量使用,函数,括号,优先级
以上编译为

CSS Code复制内容到剪贴板
  1. p {   
  2.   font: 10px/8px;   
  3.   width: 500px;   
  4.   height: 250px;   
  5.   margin-left: 9px;    
  6. }  

颜色:

CSS Code复制内容到剪贴板
  1. p {   
  2.   color: #010203 + #040506;//相加 rbg三位分别相加   
  3.   color: #010203 * 2;//相乘   
  4.   color: rgba(255, 0, 0, 0.75) + rgba(0, 255, 0, 0.75);//带alpha通道的叠加   
  5.   
  6.   color: opacify($translucent-red, 0.3);//控制透明的函数,加强非透明   
  7.   background-color: transparentize($translucent-red, 0.25);  //控制透明的函数,加强透明   
  8. }  

默认变量:

CSS Code复制内容到剪贴板
  1. $content: "First content";   
  2. $content: "Second content?" !default;   
  3. $new_content: "First time reference" !default;   
  4.   
  5. #main {   
  6.   content: $content;   
  7.   new-content: $new_content;   
  8. }  

!default 如变量被赋值使用之前的赋值,没被赋值,赋值