2017-03-12 61 views
1

我有以下參考我的CSS樣式表:樣式表內容

<link rel="stylesheet" type="text/css" href='@routes.Assets.versioned("stylesheets/main.css")' media="screen" /> 

樣式表位於/public/stylesheets/main.css

並擁有該內容:

body { 
    background-image: @routes.Assets.versioned("images/deer.jpg"); 
} 

我沒有得到任何錯誤,但沒有圖像出現在背景。

我做錯了什麼?

+0

當您在Chrome瀏覽器中的應用程序,你得到的任何錯誤開發工具控制檯?如果沒有,你可以檢查文檔''中的鏈接標籤,看它是否真的被輸出嗎? –

回答

2

公共資源(資產)不被模板引擎處理,所以

body { 
    background-image: @routes.Assets.versioned("images/deer.jpg"); 
} 

從未處理。

下面是類似的問題:

Can you reference images from css without using relative paths?

解決方案

  1. 使用靜態路徑

    body { 
        background: url("/assets/images/deer.jpg"); 
    } 
    

    /assets部分取決於你routes設置,/assets是默認設置。

  2. 寫CSS模板文件,因此這將是一個回報,但你的控制器(而不是一個公共文件夾)

+0

看着更新,第二個解決方案是在答案中的鏈接描述(順便說一句,我總是先用) –