2012-02-02 105 views
1

我很困惑目录结构的工作原理。例如,我就像是:指南针导入精灵的问题

--compass 
    --css 
    --images 
     --frontSprite 
      Images 
    -sass 
     --_base.scss 
     --advertiser.scss 
    config.rb 

当我试图导入我的图片,我使用:

@import "frontSprite/*.png"; 
在我_base.scss

,但这产生了我,我觉得是关系到一个错误没有找到正确的目录。有什么建议么?

+0

您能否提供错误?如果是完整的“--trace”输出,那将是最好的。 – maxbeatty 2012-02-03 07:42:25

回答

2

那么,正确的目录结构取决于你在config.rb中设置了什么。 应该看起来像:

images_dir = "images" 
http_images_path = "/this/path/is/rendered/in/the/css/file" 

images_dir告诉罗盘上的印纹骗(相对于config.rb)和http_images_path定义什么是在CSS-输出实际上呈现。

尝试命令compass sprite "images/frontSprite/*.png"(这将生成sprite css-output)从您的罗盘目录中调试路径。

旁注:当你使用.pngs时,你应该考虑安装油性PNG,这将显着加速精灵生成过程。这非常简单,只需使用gem install oily_png,Compass将自动检测到它已安装。

0

如果您正在使用的Symfony & assetic

转到config.yml &在参数补充一点:
assetic.filter.compass.images_dir: %kernel.root_dir%/../src/App/PlayerBundle/Resources/public/assets/img/

0

我在窗户上挂着这个问题,指南针和编辑这个文件解决它:

C:\Ruby193\lib\ruby\gems\1.9.1\gems\compass-0.12.2\lib\compass\sprite_importer.rb 

行更改19:

-  Dir.glob(File.join(path, "**", glob)) 
+  Sass::Util.glob(File.join(path, "**", glob)) 

和线路78:

-  files = Dir[File.join(folder, uri)].sort 
+  files = Sass::Util.glob(File.join(folder, uri)).sort 

保存和它的作品!

来源: https://github.com/chriseppstein/compass/commit/58babac01b56eddf63bac737f7f781d98f00f6b9 这是一个古老的补丁,所以我不知道为什么它不是在指南针的最新版本?