动态替换css头图像

动态替换css头图像,css,ruby-on-rails,Css,Ruby On Rails,在我的Rails应用程序中,我有一个基于css的布局,页面顶部有一个通用的标题图像。有一个课程模型将有一个可选的徽标图像,当用户查看课程材料时,如果标题图像存在,则有望替换标题图像。这可能吗?我该怎么做 标题的css在下面 #header{height:116px;width:100%;background:url('logo.jpg') top center no-repeat;} 应用程序位于。。。当用户登录并单击课程时,我希望课程徽标替换标题图像。您可以通过两种方式为要在标题中显示的每个

在我的Rails应用程序中,我有一个基于
css
的布局,页面顶部有一个通用的标题图像。有一个课程模型将有一个可选的徽标图像,当用户查看课程材料时,如果标题图像存在,则有望替换标题图像。这可能吗?我该怎么做

标题的css在下面

#header{height:116px;width:100%;background:url('logo.jpg') top center no-repeat;}

应用程序位于。。。当用户登录并单击课程时,我希望课程徽标替换标题图像。

您可以通过两种方式为要在标题中显示的每个图像定义不同的类,然后根据某些变量(控制器或操作名称…等)更改claa或者通过在标题中添加yield:style和覆盖标题样式,根据您的要求使用content\u for:style。

您可以通过两种方式来完成,即为要在标题中显示的每个图像定义不同的类,然后根据某些变量(控制器或动作名称…等)更改claa或者通过在head中添加yield:style和覆盖header-style取决于您的需求,使用content\u for:style。

我只想在我的主代码中包含css的一小部分,并使用一个简单的if…else语句,根据用户是否登录来更改“logo.jpg”

例如,如果用户已登录,徽标的变量将从默认值更改。如果用户未登录,则使用原始徽标


无法提供更多详细信息,因为没有代码可供使用。

我只想在主代码中包含css的一小部分,并使用一个简单的if…else语句,根据用户是否登录更改“logo.jpg”

例如,如果用户已登录,徽标的变量将从默认值更改。如果用户未登录,则使用原始徽标


无法提供更多详细信息,因为没有代码可供使用。

如果我正确理解了您的问题,某些型号会定义徽标。在这种情况下,我不会处理CSS——或者至少不会处理资产文件,因为它们应该是静态的

您可以在布局中定义徽标:
app/viev/layouts/application.html.erb
只需在其中创建如下内容:

<head>
  ..
  <style type="text/css">
    #header { background-image: url("<%= @logo_path || 'logo.jpg' %>"); }
  </style>

函数
replace\u logo
编写起来并不困难。

如果我正确理解了您的问题,某些型号会定义logo。在这种情况下,我不会处理CSS——或者至少不会处理资产文件,因为它们应该是静态的

您可以在布局中定义徽标:
app/viev/layouts/application.html.erb
只需在其中创建如下内容:

<head>
  ..
  <style type="text/css">
    #header { background-image: url("<%= @logo_path || 'logo.jpg' %>"); }
  </style>

功能
replace\u logo
将不难编写。

您可以发布一些代码吗?或者您想要的一些屏幕截图可以发布一些代码吗?或者您想要的一些屏幕截图感谢详细的响应。非常感谢。感谢您的详细回复。非常感谢。
<span onclick="replace_logo('<%= model.logo_path %>')">....</span>