COMPASS / SASS如何将变量插入@import“sprite / * .png”路径?

时间:2013-02-16 16:03:29

标签: css sass compass-sass

我在自己(有点)的SASS / COMPASS“框架”上工作。

我设置了一个变量 - $ sprite - 这是存储所有图像的文件夹的名称。

我是这样做的,所以稍后我可以使用该名称替换为image-mixin和sprite生成。

如果@import“#{$ sprite} / * .png”正在运行,那么一切都会很棒。

有什么想法吗?

    //sprite images folder name
        $sprite: "sprite";

    //settings
        $sprite-sprite-base-class: ".#{$sprite}" - *works*;
        $sprite-spacing: 20px;
        $sprite-sprite-dimensions: true;

    //generate sprite
        @import "sprite/*.png"; - normal path - *works*
        @import "#{$sprite}/*.png" - path with a variable in it - *doesn't work*

    //mixin        
        @mixin replace-with-image($imageName){
            @include replace-text-with-dimensions("#{$sprite}/#{$imageName}.png");
            @extend %dis-ib;
        } - *works*

1 个答案:

答案 0 :(得分:3)

我担心此刻根本不可能(而且永远不会像the issue that steveax posted那样)。如果你真的想要这个,你必须编写自己的小预处理器来解析你的变量,然后将它输出到.sass / .scss文件。 Alternitavely,提交功能请求......