我在 Ruby 中生成了一个脚手架,我想在网站的每个页面中插入背景图片,但是我不确定图片的链接应该是什么。
我的图片位于 app/assets/images/"dep.jpg"
这是我的代码,但它没有起作用:
background-image:url('../images/dep.jpg');
}
有人能帮忙吗?谢谢
我在 Ruby 中生成了一个脚手架,我想在网站的每个页面中插入背景图片,但是我不确定图片的链接应该是什么。
我的图片位于 app/assets/images/"dep.jpg"
这是我的代码,但它没有起作用:
background-image:url('../images/dep.jpg');
}
有人能帮忙吗?谢谢
background-image: url(/assets/dep.jpg);
如果你将scaffold.css文件转换为Sass文件(重命名为scaffold.css.scss
),那么你可以使用这个帮助器:
background-image: image-url("dep.jpg");
public
文件夹作为应用程序的基础。因此,它在/public/images/
下寻找特定的图像,而不是app/assets/images/"dep.jpg"
, 因为该图像没有在那里,所以您无法获得该图像。尝试将图像放在/public/images/
文件夹中,然后它就可以工作了。app/assets/images/dep.jpg
显然会起作用。public
文件夹位于 rails
应用程序的根目录中。层次结构如下:<yourrailsappname>/public/images
。 - udayimages
的文件夹并将其放置在那里,这样你就可以把所有的 image-type
文件都放在同一个地方了。 - udayno-repeat
,就像这样。并且,如果我的回答对你有帮助,请不要忘记给我评分。 - udayapp/assets/images/dep.jpg
,那么在 Rails 的 CSS 文件中,你应该写成 background: url('/assets/dep.jpg');
这样就不需要把图片放在 public 文件夹里了。背景:url('/assets/image_name.jpg');
这个方法适用于我使用的Rails 4.0版本。
你肯定可以使用绝对路径:
background-image:url('/images/dep.jpg');
public
作为基础文件夹,即使他应用绝对路径,除非通过某些奇怪的调整,Web服务器可以访问到该文件,否则它也不会起作用,你觉得呢? - udaybackground: url('../dep.jpg');
由于 CSS 文件也位于您的资产文件夹中,..
将自动引用资产文件夹。
/public
有一个images
文件夹,我认为它正在那里查找而不是你的路径。 - uday../
表示从当前文件位置向上一个目录,并查找一个名为 images 的目录。您的目录结构是什么样的? - Matt Kbackground-image:url('../images/dep.jpg');
- Matt K