自动创建列使用单个普通列表(Auto Create Columns Using Single Pla

2019-09-22 04:44发布

我想写灵活的代码在那里我有一个简单的<ul>它就会自动创建每5个元素的另一列。 我发现了一个教程是实现这一点,但从前我需要一个垂直顺序放置在水平顺序的项目。 我已经看到,输出垂直为了一些其他的教程,同时也重视class="first"class="second"每个li这不是我想要的。 我期待与我现有的HTML代码的事情。

我想要的是:

-01     -06     -11   
-02     -07     -12
-03     -08     -13
-04     -09     -14
-05     -10     -15

我有的:

-01     -02     -03   
-04     -05     -06
-07     -08     -09
-10     -11     -12
-13     -14     -15

CSS:

ul {
    width:760px;
    margin-bottom:20px;
    overflow:hidden;
}

li {   
    float:left;
    display:inline;
}

.double li  { width:50.0%; } /* 2 col */
.triple li  { width:33.3%; } /* 3 col */
.quad li    { width:25.0%; } /* 4 col */
.six li     { width:16.6%; } /* 6 col */

HTML:

<ul class="triple">
  <li>01</li>
  <li>02</li>
  <li>03</li>
  <li>04</li>
  <li>05</li>
  <li>06</li>
  <li>07</li>
  <li>08</li>
  <li>09</li>
  <li>10</li>
  <li>11</li>
  <li>12</li>
  <li>13</li>
  <li>14</li>
  <li>15</li>
</ul>

Answer 1:

您可以使用此代码 :

ul
{
    -webkit-column-count: 4; -webkit-column-gap:20px;
    -moz-column-count:4; -moz-column-gap:20px;
    -o-column-count:4; -o-column-gap:20px;
    column-count:4; column-gap:20px;
}

但我不知道它是否工作在不幸的是所有的浏览器。 你应该尝试这一点。

这里的的jsfiddle发挥它: http://jsfiddle.net/leniel/nRL4R/



Answer 2:

http://codepen.io/anon/pen/iDzmq

这是我知道这样做的唯一途径。 只是在你的代码使用渲染列表将其设置为添加ul.sub每5里

任何问题?



文章来源: Auto Create Columns Using Single Plain List