2012-02-02 108 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 這是一個古老的補丁,所以我不知道爲什麼它不是在指南針的最新版本?