期望的输出:
<ul>
<li class="odd">stuff</li>
<li class="even">stuff</li>
<li class="odd">stuff</li>
<li class="even">stuff</li>
<li class="odd">stuff</li>
<li class="even">stuff</li>
<li class="odd">stuff</li>
<li class="even">stuff</li>
</ul>
CSS:
.odd {color:blue}
.even{color:red;}
在轨道3中有没有一个干净的方法来做这个没有计数器等?
感谢
答案 0 :(得分:38)
答案 1 :(得分:4)
我找到了一个对我有用的答案here,这里有点充实。测试使用Rails 3.2.8。
something.html.erb
文件:
<table>
<tr>
<th>foo</th>
<th>bar</th>
</tr>
<% @something.each do |s| -%>
<tr class="<%= cycle('oddrow', 'evenrow') -%>">
<td> ... </td>
<td> ... </td>
</tr>
<% end %>
</table>
something.css.scss
文件:
table tr.oddrow {
background-color: #111111;
}
table tr.evenrow {
background-color: #333333;
}
答案 2 :(得分:2)
严格地说,不是真正的铁路,而是实现奇/偶的干净方式是在客户端使用jquery:http://api.jquery.com/odd-selector/
答案 3 :(得分:1)
Rails的TextHelper方法:cycle。
<li class="<%= cycle('odd','even') -%>">stuff</li>
注意:'奇数'应该在'偶数'之前(不是上面列出的)或者你的设计师可能不满意起始背景颜色没有像她计划的那样。