美文网首页
Sass总结(二)

Sass总结(二)

作者: 米几V | 来源:发表于2017-06-25 15:30 被阅读0次

控制指令

Sass中可使用条件控制指令和循环控制指令。

@if指令
$type: left;
.hand {
  @if $type == right {
    color: red;
  } @else if $type == left {
    color: blue;
  }@else {
    color: white;
  }
}
//编译后
.hand {
  color: blue; }
@for指令

@for指令有两种形式,一种是@for $var from <start> to <end>,另一种是@for $var from <start> through <end>。
@for $var from <start> through <end>示例

.hand {
  @for $i from 1 through 3 {
    .border-#{$i} {
      border: #{$i}px solid blue;
    }
  }
}
//编译后
.hand .border-1 {
  border: 1px solid blue; }
.hand .border-2 {
  border: 2px solid blue; }
.hand .border-3 {
  border: 3px solid blue; }

@for $var from <start> to <end>示例

.hand {
  @for $i from 1 to 3 {
    .border-#{$i} {
      border: #{$i}px solid blue;
    }
  }
}
//编译后
.hand .border-1 {
  border: 1px solid blue; }
.hand .border-2 {
  border: 2px solid blue; }

从上面的两个例子中可以发现,@for $var from <start> through <end> 包含<start>和<end>,而@for $var from <start> to <end> 从<strat>开始执行,但不包含<end>的值。

@while指令
$i:3;
@while $i > 0 {
  .item-#{$i} {
    border-width: 2px * $i;
  }
  $i: $i - 1;
}
//编译后
.item-3 {
  border-width: 6px; }
.item-2 {
  border-width: 4px; }
.item-1 {
  border-width: 2px; }
@each指令
@each $member in logo, icon, banner {
  .#{$member}-img {
    background-image: url('/images/#{$member}.png');
  }
}
//编译后
.logo-img {
  background-image: url("/images/logo.png"); }
.icon-img {
  background-image: url("/images/icon.png"); }
.banner-img {
  background-image: url("/images/banner.png"); }

函数

Sass提供了部分内置函数,也允许用户自定义函数。

内置函数

Sass中内置了有关颜色、字符串和数字等有关的函数,以颜色函数为例。

.error {
  color: lighten(#000, 10%);
  background-color: darken(#fff, 10%) ;
}
//编译后
.error {
  color: #1a1a1a;
  background-color: #e6e6e6; }
自定义函数

Sass中允许用户使用@function自定义函数。

@function widther($n) {
    @return $n + 2px;
}
.error {
  border-width: widther(1px);
}
//编译后
.error {
  border-width: 3px; }

注释

Sass中有两种注释,一种与css的标准注释格式相同/.../(多行注释),另一种是静默注释,也叫单行注释,是以//开头的。

//采用链式继承
/* 采用链式继承-by gj*/
.error {
  color: red;
}
//编译后
/* 采用链式继承-by gj*/
.error {
  color: red; }

可以看出,Sass中的静默注释,在编译后的css文件中是不存在的,而Sass中的多行注释,编译后依然存在。因此,那些只是为了给自己看的注释,需要使用静默注释。

相关文章

  • Sass总结(二)

    控制指令 Sass中可使用条件控制指令和循环控制指令。 @if指令 @for指令 @for指令有两种形式,一种是@...

  • less总结

    css-less和sass总结

  • sass

    很好的总结:sass:常用备忘[https://www.cnblogs.com/chyingp/p/sass-ba...

  • SASS 总结

    Sass是一门css扩展语言 Sass 与 Scss 区别 Sass是一种缩进式的语法 不需要{} ;以及/**/...

  • Sass总结

    总结 sass语言我们前前后后也学了快2周了,基本上都学完了。现在可以做一下阶段性的总结,将我们学习的东西变薄。 ...

  • sass/scss/less/css的前世今生

    sass/scss 和 less的区别 一. Sass/Scss、Less是什么? 二. Sass/Scss与Le...

  • 前端(9)vue安装sass

    一、创建vue项目 二、安装sass 三、node-sass版本和sass-loader版本对应 nodenode...

  • gulp的配置

    学习笔记整理、总结 一、 sass、ruby、compass之间的关系和作用 sass是css预处理器,是基于ru...

  • 关于Sass你知道多少

    项目中一直在使用sass和less,也是时候归纳总结下它们的特性了,先来看看sass。sass有两种后缀名的文件,...

  • day10

    A 一、webstorm下配置sass环境 二、sass概念,语法 概念参考:http://blog.csdn.n...

网友评论

      本文标题:Sass总结(二)

      本文链接:https://www.haomeiwen.com/subject/wwcrcxtx.html