css - 我的蓝图 CSS 不适用于列数不均匀的情况

标签 css ruby-on-rails blueprint-css css-multicolumn-layout

我在 Rails 应用程序上使用 Blueprint CSS。我将其设为 4 列布局,每个元素周围都有一个框。如果我有 4 件商品或 8 件商品,那么一切都很好,我有 2 行产品。如果我有第 9 个产品或任何不能被 4 整除的产品,那么行和元素就会脱节并溢出到下一列。有谁知道问题出在哪里?

div.four-column {
    -moz-column-count: 4;
    -webkit-column-count: 4;
    column-count: 4;
    -moz-column-width: 10em;
    -webkit-column-width: 10em;
    column-width: 10em;
    width: 910px;
}
<ul>
  <% @products.each do |product| %>
    <li class="box">
      <%= link_to product.name, product_path(:id) %></br>
      <%= product.price %>
    </li>
  <% end %>
</ul>

最佳答案

嗯,一个快速的解决办法可能就是做这样的事情

<% @count_diff = @products.divmod(4) >
<ul>
  <% @products.each do |product| %>
    <li class="box">
      <%= link_to product.name, product_path(:id) %></br>
      <%= product.price %>
    </li>
  <% end %>
  <% if @count_diff[1] > 0 %>
    <% @count_diff[1].each do |empties| %>
      <li class="box">&nbsp;</li>
    <% end %>
  <% end %>
</ul>

至少我认为这是正确的代码 :-) 我仍在学习自己。但基本上我提供的 hack 只会填充“空”li 标签来平衡它。因此,如果您有 9 个作品,它会多出 3 个空的 li。

可能有一种更“ruby 方式”的做法。

关于css - 我的蓝图 CSS 不适用于列数不均匀的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7814034/

相关文章:

html - 无法控制标签和输入标签之间的垂直间距

css - 从左到右慢慢显示图像

ruby-on-rails - 在 Rails 中增加发票数量

ruby-on-rails - 我怎样才能对模型中的长度验证做一个 if else 语句

css - 蓝图 CSS 框架 : Para moves to right side

css - 蓝图 css 问题在 ie 中不起作用

html - 为什么 Blueprint-Css 将布局的最大网格宽度设置为 950px?

javascript - jQuery 缩放 DIV

javascript - 带有缩放到顶部的 float 标题,如 theverge.com

ruby-on-rails - 搜索栏 Ruby On Rails 的问题