如何在rails中为每个页面添加不同的背景图像?

时间:2017-07-22 04:11:48

标签: css ruby-on-rails

我的rails网站上有3页,我想在每个页面中添加不同的背景图像。如果我做

body {
   background-image: url("myimage.jpeg")
}

它会在所有页面上放置相同的背景图像。所以我将每个页面的所有html代码都包装在一个主.class容器中,并设置容器的背景图像。但这样做会在页面的底部留下一点白色空间,即使我这样做,背景也不会完全占据底部

.wallpaperdiv {
      background-image: url("wallpaperbackground.jpeg");
      background-attachment: fixed;
      background-position: cover;
      background-repeat: no-repeat;
      background-size: 100%;
            }

第一个针对" body"的代码而不是班级不留任何空白区域。我需要做些什么来移除底部的空白区域?

1 个答案:

答案 0 :(得分:2)

您可以在class标记中添加body属性,具体取决于其响应的操作,例如,如果您有foobarmeh控制器Main中的方法,然后你可以这样做:

<body class="<%= params[:action] %>">

根据当前操作,它会生成<body class="foo">之类的标记。那么你可以创建你的CSS样式,如:

body.foo { ... }
body.bar { ... }
body.meh { ... }

请注意,如果您有多个具有相同名称的方法,则可能需要向标识符添加一些额外信息。