【问题标题】:Reorder array for a css multi-column layout为 css 多列布局重新排序数组
【发布时间】:2023-03-25 09:04:01
【问题描述】:

如何重新排序数组

[1, 2, 3, 4, 5, 6, 7, 8, 9]

进入..

[1, 4, 7, 2, 5, 8, 3, 6, 9]

我需要它用于 3 列 css 布局:

<ul>
  <li>1</li>
  <li>4</li>
  <li>7</li>
  <li>2</li>
  <li>5</li>
  <li>8</li>
  <li>3</li>
  <li>6</li>
  <li>9</li>
</ul>


ul { -webkit-column-count: 3 }

这应该产生:

| 1 | 2 | 3 |
| 4 | 5 | 6 |
| 7 | 8 | 9 |

【问题讨论】:

    标签: ruby-on-rails ruby css


    【解决方案1】:
    ary = (1..9).to_a
    ary.each_slice(3).to_a.transpose.flatten
    

    【讨论】:

      【解决方案2】:
      slices = [1, 2, 3, 4, 5, 6, 7, 8, 9].each_slice(3).to_a
      zip = slices[0].zip(*slices[1..-1]).flatten
      #=> [1, 4, 7, 2, 5, 8, 3, 6, 9]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-08-11
        • 2011-05-10
        • 1970-01-01
        • 2021-04-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多