haml 中大家是怎么处理这种重复代码的?
- @products.each do |product| - if product.id % 2 == 1 .item-even 代码片段1 - else .item-odd 代码片段2
代码片段 1 和代码片段 2 完全一样,if 判断只是想对两个部分做不同样式展示 比如奇数列和偶数列
- @products.each do |product| %div{ class: cycle("item-odd", "item-even") } 代码片段
学习,正解
以此例來說,可以用 is / CSS 處理奇偶行的問題。
处理奇偶行应该这样做最好
tr:nth-child(2n+1) { color: #ccc; } tr:nth-child(2n) { color: #000; }
helper
@ywjno 我是比较喜欢你的解决方法;不过记得 IE9 之前不支持 nth-child 吧?
IE 解决方法:
<!--[if ie]> <script> $('.item:nth-child(odd)').addClass('item-odd') $('.item:nth-child(even)').addClass('item-even') </script> <![end if]-->
#1 楼 @windless_j 这个是个好东西!