2012-07-25 33 views
6

我有一个问题,使用包含在波旁的mixins。 当这个mixin使用Bourbon的“compact”功能时,它只是将它编译到css中而不使用它。 这里是一箱阴影的rendred CSS的截图:波旁与SASS的“紧凑”功能不叫

http://i.stack.imgur.com/YF1JB.png

我用它在非静态的网站,有最新版本的Sass。我使用Codekit进行编译。

感谢您的帮助!

+0

类似的http://stackoverflow.com/questions/41957672/compass-box-shadow-mixin-returns-invalid-property-value – Green 2017-01-31 17:13:51

回答

14

好了,在深入了解了一下之后,我就这样修复了它。

这个问题可能正在因为这个承诺造成的: https://github.com/thoughtbot/bourbon/commit/ac07c990c0d0fe16f4c455490c9a9fdff7fe27af

紧凑功能在Ruby中被重写,以更好地与Rails的集成。 最初我刚刚复制粘贴从回购'样式表'文件夹。那就是当我开始犯错误的联合。

我通过阅读说明修正了错误:) - 关于如何在Rails中安装它,然后它的工作的指示。

在你的情况,IDK的,如果他们有一个codekit实现,但我相信你可以通过添加以下代码解决这个问题:

@function compact($var-1,  $var-2: false, 
        $var-3: false, $var-4: false, 
        $var-5: false, $var-6: false, 
        $var-7: false, $var-8: false, 
        $var-9: false, $var-10: false) { 
    $full: $var-1; 
    $vars: $var-2, $var-3, $var-4, $var-5, 
     $var-6, $var-7, $var-8, $var-9, $var-10; 

    @each $var in $vars { 
    @if $var { 
     $full: $full, $var; 
    } 
    } 
    @return $full; 
} 

(我从回购的代码)

在你的插件文件夹中的文件名_function.scss中,并在_bourbon.scss中引用它。这应该能解决你的问题。

+0

运行assets:precompile时,我遇到了类似的问题。我使用了你的解决方案,但是我必须在上面的列表中添加$ var-11。感谢您的解决方案。 – ghayes 2012-12-12 07:36:33

+0

如果使用SASS语法:https://gist.github.com/mahemoff/5251266 – mahemoff 2013-03-27 03:06:12