2

我有rails 3.2.9,我想放一张背景图片。我的图像在文件夹中找到:public/images我也把它放在文件夹中:assets/images

ul { 
    height: 200px; 
    width: 350px; 
    border: solid 1px blue; 
    margin: 0 auto; 
    padding: 0px;
    background-image: url('/images/todo.png'); 
}

但没有背景图像。请帮忙。

4

5 回答 5

8

我必须说:

background-position: center;

所以我的代码是:

background: url(/assets/rsz_todo.png) no-repeat;
background-position: center;

我的图像位于assets/images

于 2013-01-21T14:11:24.370 回答
2

一种简单的检查方法(在编辑 CSS 之前)是在浏览器中输入路径。这样您就可以确定路径应该是什么。

您的app/assets/images文件夹映射到:

http://domain/assets/

因此,如果您有一个 app/assets/images/logo.png,您应该能够在浏览器中检索它,例如:

http://domain/assets/logo.png

然后,在您的 CSS 中,您应该能够引用您的 logo.png,例如:

// app/stylesheets/application.css
body {
 background: url(/assets/logo.png) no-repeat;
}

还可以查看 Rails 资产管道:

http://guides.rubyonrails.org/asset_pipeline.html

于 2013-01-21T09:14:54.467 回答
2

如果这有助于任何人找到这个... Rails 提供了帮助方法来引用 CSS 或 SASS 文件中的资产

background-image: image-url("rails.png")

变成...

background-image: url(/assets/rails.png);
于 2014-09-12T04:57:00.173 回答
1

你为什么不试试:

background: url(image.png)

资产管道是为简单起见而组成的。

于 2013-01-21T09:49:12.143 回答
-1

如果您将图像放在 assets/images 中,那么在调用该图像时,您应该使用

background-image:url("/assets/image.png");

或者你可以试试

 background:url("/assets/image.png");

有时我发现使用背景而不是背景图像效果更好,但这只是个人经验

于 2013-01-21T08:57:41.470 回答