【问题标题】:Can I use a different number of grid columns on the same website using twitter bootstrap?我可以使用 twitter bootstrap 在同一个网站上使用不同数量的网格列吗?
【发布时间】:2013-04-15 15:15:24
【问题描述】:

正如标题所说 - 我可以使用 twitter bootstrap 在同一网站上使用不同数量的网格列吗?

例如,在about page 上我想定义一个14 个元素的网格系统,但在contact page 我想使用8 列网格系统。我可以这样做吗?

我知道有一个名为 @gridColumns 的变量,但我可以为不同的页面定义它<div classes> 还是有其他方法?

编辑: 有一种方法可以通过使用不同的布局和使用不同的包含文件来做到这一点——前者覆盖about page 的css,后者覆盖contact page 的css 布局。我认为这可以做到,但有更好的方法吗?

【问题讨论】:

  • 嗯,没有什么能帮上忙的。我试图找到 @gridColumns 在 Twitter 引导程序中定义的位置,并尝试找到一种方法来为单独的 div 定义它。在某种程度上我一开始就很糟糕,所以在某种程度上我正在寻找是否有人以前遇到过这种问题。
  • 在这种情况下,除了对不同页面使用不同的布局之外,我认为没有更好的方法。
  • @prem 最后我找到了更好的解决方案。我认为可能会有更好的,但它现在有效。感谢您的调查。

标签: css ruby-on-rails twitter-bootstrap


【解决方案1】:

好吧,看来我找到了办法。至少这是我确信的方式之一。它目前正在工作,但我会进一步调查,如果我找到更好的解决方案,我会在这里发布。

我已经通过在资产中创建一个新文件来实现它 - 比如说我的 assets/stylesheets 文件夹中的 about.css.less。我已将所有我想覆盖的变量放在about 页面上。 (基本上我已经复制了bootstrap_and_overrides.css 的内容并且我已经覆盖了我想要的参数)

然后在/view/layouts/application.html.erb我放了代码:

<% if params[:controller] != 'about' %>
    <%= stylesheet_link_tag "application", :media => "all" %>
<%end%>

它现在包括abouts.css 用于about 页面和所有其他不包含的页面。这至少是一种解决方案。

【讨论】:

  • 同“包括单独的样式文件”。但是,rails 会自动加载控制器名称样式文件,因此您不必显式包含该文件。
  • 感谢您的补充评论。我已经更新了答案。谢谢
  • 不需要像这样设置条件,您可以在rails中加载控制器特定资产,如下所示。例如:您可以在布局文件中添加 for css 和 for js。
  • 是的,但这是not 加载其他样式表的条件。对于此解决方案,我不需要包含特定文件,而是要找到不应该包含的文件,因为控制器特定的 css 将自动加载,就像你说的那样。但无论如何感谢 cmets 和帮助。再见
猜你喜欢
  • 2015-06-29
  • 1970-01-01
  • 1970-01-01
  • 2018-05-16
  • 1970-01-01
  • 2012-02-21
  • 1970-01-01
  • 2013-12-08
  • 2020-10-05
相关资源
最近更新 更多