特定视图的不同标题样式

时间:2013-10-03 10:24:40

标签: css ruby-on-rails

我当前的Rails项目要求主页有一个与页面其余部分视图不同的标题。唯一的区别是应用它的风格(更大的徽标,更大的搜索栏......)。我有一个有效的解决方案,但感觉有点“脏”,我想知道是否有更优雅的方式来设计特定页面。

到目前为止,我在应用程序的布局上执行此操作:

body class="#{controller_name} #{action_name}"

所以我可以在mi css上做到这一点:

#headerWrapper {
  font-size: 1.5em;
  ...
}
...
.catalog.index {
  #headerWrapper {
    font-size: 2em;
      ...
  }
}

但每当我在这里对基本样式进行更改时,索引页面的布局可能会受到影响,我不得不“撤消”我所做的任何更改(即如果我更改字体大小,我必须适应相应的.catalog.index部分)。

对于处理此问题的最优雅方式的任何想法将非常感激。

感谢。

1 个答案:

答案 0 :(得分:0)

只需为主页创建第二个布局页面,该页面引用您想要的特定外观和css类,然后指示控制器和特定操作呈现新布局,即:

class PostsController < ApplicationController

  layout 'signin', :only => [:show]

  ......

end

此处提供更多信息:http://guides.rubyonrails.org/layouts_and_rendering.html(我建议的具体内容是从2.2.12.1开始)