2012-05-22 83 views
12

我在使用LESS作爲我的網站的樣式表時面臨一個問題。就個人而言,我寧願在CSS中使用相對路徑而不是絕對路徑(只有我的習慣),但現在當我使用LESS和導入功能時,我遇到了一個問題,如下所示。相對路徑較少的CSS背景

我有一個main.less文件在根文件夾

@import "inc/inc.less"; 

和在文件夾中的文件inc.lessinc

.homeBgr { 
    background: url('icons/Home.gif'); 
} 

圖像0​​是在文件夾/root/inc/icons

- main.less 
     - inc 
     - inc.less 
     - icons 
      - Home.gif 

lessc輸出

.homeBgr { 
    background: url('icons/Home.gif'); 
} 

然而,我的期望是

.homeBgr { 
    background: url('inc/icons/Home.gif'); 
} 

如果我使用less.js作爲客戶端的編譯器,我得到的輸出符合市場預期,但如果我使用lessc,我不知道。

有沒有人有同樣的問題,並有解決方案?或者真的,關於如何使這個工作的任何建議。提前致謝。

回答

4

你必須使用.less的轉義功能。它看起來像這樣。螢火蟲它或使用chromes螢火蟲喜歡的東西檢查路徑,如果這不起作用,你需要調整到根文件夾。你至少可以在逃脫之後調整它。

background: ~"url('inc/icons/Home.gif')"; 
+0

我認爲這樣會讓我或客戶感到困惑,因爲相對路徑不是意思(不涉及'inc.less'文件) –

2

而不必在/ INC根main.less和其他少的文件,把你所有的減檔變成「CSS」,「風格」或「少」的文件夾。然後,您可以通過執行「../icons/home.gif」來使用圖像的一致相對路徑。

1

相對圖像路徑與生成的CSS文件相關,而不是與LESS文件相關。