我在ruby中生成了一個腳手架,我想爲網站上的每個頁面插入一個背景圖片,但我不知道該圖片的鏈接應該是什麼。在CSS中的Ruby on Rails 2中添加背景圖片
我的形象是app/assets/images/"dep.jpg"
這是我有,但它不是工作:
background-image:url('../images/dep.jpg');
}
任何幫助嗎?謝謝
我在ruby中生成了一個腳手架,我想爲網站上的每個頁面插入一個背景圖片,但我不知道該圖片的鏈接應該是什麼。在CSS中的Ruby on Rails 2中添加背景圖片
我的形象是app/assets/images/"dep.jpg"
這是我有,但它不是工作:
background-image:url('../images/dep.jpg');
}
任何幫助嗎?謝謝
在rails中的網絡服務器需要public
文件夾作爲應用程序的基礎。因此,它尋找/public/images/
下的具體圖像,而不是app/assets/images/"dep.jpg"
&因爲它不存在那裏你不能得到的圖像。嘗試將你的圖片放在/public/images/
文件夾中,然後它就可以工作。
編輯:如果您使用的鋼軌3.1然後像Rails 3.1使用您的應用程序的資產資產管線的概念,這樣的話那麼路徑app/assets/images/dep.jpg
顯然這個工作將是不同的。
,可以使用絕對路徑肯定的:
background-image:url('/images/dep.jpg');
我想知道,因爲Rails將'public'作爲basefolder,所以即使他應用了絕對路徑,它也不會工作,除非&直到文件被網絡服務器通過一些奇怪的調整重新啓動後,你不覺得? – uday
在Rails 3.1,將路徑實際上是`/assets/dep.jpg「:
background-image: url(/assets/dep.jpg);
如果您轉換您的腳手架。 css文件到薩斯文件(重命名爲scaffold.css.scss
),那麼你可以使用助手:
background-image: image-url("dep.jpg");
如果你的形象是在app/assets/images/dep.jpg
,然後在rails的css文件中,您應該編寫background: url('/assets/dep.jpg');
您不必以這種方式將圖像置於公用文件夾中。
如果您正在使用的軌道的現代版(3.1或更高版本我相信),你可以使用:
background: url('../dep.jpg');
由於CSS也住在你的資產文件夾..
自動引用資產文件夾。
嘗試給出確切的路徑。因爲即使文件夾'/ public'也有'images'文件夾,我認爲它看起來那裏而不是你的路徑 – uday
這取決於你的文件在哪裏,相對於你的圖像目錄。 '../'表示從當前文件位置向上移動一個目錄並查找圖像目錄。你的目錄結構是什麼樣的? –
我的rails項目文件夾叫做ClassSchedule/apps/assets/images/dep.jpg – Dan