我可以从SASS文件导入一个或多个子部分吗?

时间:2014-09-17 19:34:54

标签: css import sass

我的SASS生成的CSS文件充斥着一堆我不需要的东西。这意味着我的用户必须下载比他们真正需要的更大的CSS文件。

在大多数编程语言中,可以创建如下的import语句:

from "some_codefile" import Dog, Cat, Fish

对于SASS场景,我们假设我有一个部分文件_colors.scss

它包含:

$white: #ffffff;

@mixin black() {
    color: black;
}

.red {
    color: red;
}

.blue {
    color: blue;
}

现在我要导入$white@include black.red。但是,我不使用.blue类,也不想导入它,因为它只会占用我的CSS文件中的空间。

我试过了:

@import "colors.scss" white, black, red;

但它只是给出了语法错误。

如何防止我的CSS文件填满我不需要的东西?

1 个答案:

答案 0 :(得分:2)

不,那是不可能的。但是,您可以在部分中使用placeholder selectors,除非@extend编辑,否则不会呈现它们。

$white: #ffffff;

@mixin black {
    color: black;
}

%red {
    color: red;
}

%blue {
    color: blue;
}

.foo {
  @extend %red;
}

.bar {
  @extend black;
}