2013-08-29 130 views
1

使用Rails,我很好,在HTML文件中的圖像標籤助手,但我如何包括圖像在CSS文件。我試着從更換網址:Rails圖像標籤助手

background:url('/assets/img/banners/img3.jpg') 

到...

background:url(<%= image_tag "banners/img3.jpg" %>) 

但這不起作用。我是否需要更改我的css文件的擴展名以使其工作?

回答

1

你在CSS中沒有任何助手,沒關係;您可以手動指定路徑並始終工作。

還要記住,路徑是相對於樣式表本身,而不是HTML文檔。

+0

標記爲正確,因爲第一個正確答案和簡單。歡呼 – tommyd456

1

是的,你的css最後應該有erb擴展名。例如:style.css.erb。那麼你就可以做到這一點

.class { background-image: url(<%= asset_path 'image.png' %>) } 

這工作,因爲資產管道自動評估ERB由於erb文件extension.n這個例子中,它將使意義有一個形象的資產負載路徑之一,如app/assets/images/image.png,這裏會引用它。如果此圖像已作爲指紋文件在public/assets中可用,則會引用該路徑。

閱讀更多在The Asset Pipeline Guide

+0

但如果我們使用.scss而不是.css –

+0

那麼在這種情況下,文件名就像'style.css.scss.erb'。只需在末尾添加'erb',以確保首先處理'asset_path'標記 – CuriousMind