1

我想动态更改我的应用程序背景。对于该背景图像,我将图像保存在只有一行的数据库中,如果我上传新的背景图像,它将更新数据库的第一行并且它也会影响背景。

这是我的查看代码

<%=ChangeBackdrops.first.media.url%>

这是我的CSS

body {
  background-image: url(/../../../images/back.jpg);
  background-repeat:no-repeat;
  background-position:center center;
  background-attachment:fixed;
  -o-background-size: 100% 100%, auto;
  -moz-background-size: 100% 100%, auto;
  -webkit-background-size: 100% 100%, auto;
  background-size: 100% 100%, auto;
}

如何在该 CSS 中传递我的 ruby​​ 标签?是这样的意思吗?

background-image: url(<%=ChangeBackdrops.first.media.url%>)
4

2 回答 2

1

最简单的方法就是style在渲染视图时将代码放在标签内。application.html.erb尝试在(例如)中编写以下代码:

<head>
  ...
  <link rel="stylesheet" ... /> <!-- load your common stylesheet --!>
  <!-- and now override the background-image --!>
  <style>
    body {
      background-image: url("#{ChangeBackdrops.first.media.url}");
    }
  </style>
</head>
于 2012-05-23T08:09:25.967 回答
0

你用什么版本的rails?您使用资产管道吗?在这种情况下,您只需将 erb 扩展名添加到您的 css 文件并使用您建议的行<%=ChangeBackdrops.first.media.url%>。您可能想查看本指南,它的“预处理”部分

于 2012-05-23T07:55:34.210 回答