我在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"> </li>
<% end %>
<% end %>
</ul>
至少我认为这是正确的代码:-)我还在学习自己。但基本上,我提供的hack将只是填充"空"的li标签来平衡这一切。因此,如果你有9个产品,它会产生3个额外的空li。
可能有一种更"ruby"的方式。