以前可能已经回答过这个问题,但我没有找到解决我的问题的方法。
我想改变 body 的类,以便我可以通过 CSS 为特定页面设置背景图像。
在 application.html.erb 中:
<body class="<% params[:home_page] ? "homepage" : "" %>">
在我的 Controller 中我有:
def home
params[:home_page] = true
end
在我的 SCSS 文件中:
.homepage {
background-image: url("blue_sky.jpg");
background-size: cover;
background-repeat: no-repeat;
background-attachment: fixed;
height: 100%;
}
不幸的是, body 的类别没有改变。经查,参数中有参数home_page,值为true,那么为什么body的class没有改成“homepage”呢?我也尝试使用实例变量而不是参数,但没有成功。
谢谢大家!
最佳答案
你错过了这个=
应该是这样的
<body class="<%= params[:home_page] ? "homepage" : "" %>">
其次,params[:home_page]
表示 localhost:3000?home_page=true
,当您从操作中得到它时,它会像这样很好
def home
@home_page = true
end
然后
<body class="<%= @home_page ? "homepage" : "" %>">
关于html - 如何在 Ruby on Rails 中通过参数添加 <body> 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50541819/