码迷,mamicode.com
首页 > 其他好文 > 详细

sass的类型判定

时间:2014-07-07 23:40:02      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:color   cti   io   type   ar   har   

由于sass的作者是rubyer,因此它的类型与JS有点不一样,但一样可以类推。

@charset "utf-8";//必须设置了这个才能编译有中文的注释


$gray: #333;//颜色
$number: 12;//数字
$boolean: true;
$array:();
$string:"string";
$string2: ‘string‘;
$null:null;
$map: (
    aa:1,
    bb:2
);
@mixin box-shadow($shadows) {
  -moz-box-shadow: $shadows;
  -webkit-box-shadow: $shadows;
  box-shadow: $shadows;
}

.aaa {
    content: type-of($gray);
}
.bbb {
    content: type-of($number);
}
.ccc{
    content: type-of($boolean);
}
.ddd {
    content: type-of($array);
}
.eee {
    content: type-of($string);
}
.fff {
    content: type-of($string2);
}
.ggg {
    content: type-of($null);
}
.hhh {
    content: type-of(type-of);
}
.iii {
    content: type-of($map);
}
.kkk {
    content: type-of(box-shadow);
}
//--------------------------------------
.aaa {
  content: color; }

.bbb {
  content: number; }

.ccc {
  content: bool; }

.ddd {
  content: list; }

.eee {
  content: string; }

.fff {
  content: string; }

.ggg {
  content: null; }

.hhh {
  content: string; }

.iii {
  content: map; }

.kkk {
  content: string; }

可以看到sass的类型有null, string, bool, number, list, map, color这几种类型,如果直接拿内置函数的名字或@mixin函数放进type-of里,都是得到字符串。

但type-of不能判定@function函数与@mixin函数,这时就需要用到function_exists, mixin_exists这两个方法了,但我觉得它们的名字起得不好,不是中杠线连在一起!

@charset "utf-8";//必须设置了这个才能编译有中文的注释

@mixin box-shadow($shadows) {
  -moz-box-shadow: $shadows;
  -webkit-box-shadow: $shadows;
  box-shadow: $shadows;
}



.testvar1{
     content: function_exists("type-of");
}
.testvar2{
     content: mixin_exists("box-shadow");
}
//--------------------------------------
.testvar1 {
  content: true; }

.testvar2 {
  content: true; }


有了类型判定,我们就可以玩参数泛型化了。

sass的类型判定,布布扣,bubuko.com

sass的类型判定

标签:color   cti   io   type   ar   har   

原文地址:http://www.cnblogs.com/rubylouvre/p/3812724.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!