使用下面的HTML,将列表显示为两列的最简单方法是什么?
<ul>
<li>A</li>
<li>B</li>
<li>C</li>
<li>D</li>
<li>E</li>
</ul>
想要显示:
A B
C D
E
解决方案需要与Internet Explorer兼容。
使用下面的HTML,将列表显示为两列的最简单方法是什么?
<ul>
<li>A</li>
<li>B</li>
<li>C</li>
<li>D</li>
<li>E</li>
</ul>
想要显示:
A B
C D
E
解决方案需要与Internet Explorer兼容。
当前回答
这可以使用父div上的column-count css属性来实现,
like
column-count:2;
查看更多细节。
如何使浮动DIV列表出现在列,而不是行
其他回答
下面是一个简单的方法,使用简单的CSS创建一个多列列表。如果需要,样式标记显然可以放入CSS中。
<p>Materials List</p>
<ul style="display: inline-block; float: left">
<u>Item Description<u>
<li>1/2" x 4' wood dowel</li>
<li>1/2" x 12" PVC pipe</li>
<li>1/2" PVC pipe end cap</li>
<li>7/16" x 3" light duty expansion spring</li>
<li>6" plastic zip ties</li>
<li>Light weight antenna</li>
</ul>
<div style="display: inline-block; margin-left: 1em">
<u>Qty</u>
<div style="text-indent: 0.5em">3</div>
<div style="text-indent: 0.5em">1</div>
<div style="text-indent: 0.5em">1</div>
<div style="text-indent: 0.5em">2</div>
<div style="text-indent: 0.5em">8</div>
<div style="text-indent: 0.5em">1</div>
</div>
<p></p>
您可以使用CSS只设置两个或更多列
一个E B C D
<ul class="columns">
<li>A</li>
<li>B</li>
<li>C</li>
<li>D</li>
<li>E</li>
</ul>
ul.columns {
-webkit-columns: 60px 2;
-moz-columns: 60px 2;
columns: 60px 2;
-moz-column-fill: auto;
column-fill: auto;
}
你可以很容易地用jQuery-Columns Plugin来做到这一点,例如,用一个。mylist类来分割一个ul
$('.mylist').cols(2);
下面是jsfiddle的一个实例
我喜欢这个比CSS更好,因为在CSS解决方案中,不是所有东西都垂直对齐到顶部。
我在看@jaider的解决方案,但我提供了一个稍微不同的方法,我认为更容易使用,我已经看到跨浏览器都很好。
ul{
list-style-type: disc;
-webkit-columns: 2;
-moz-columns: 2;
columns: 2;
list-style-position: inside;//this is important addition
}
在默认情况下,无序列表显示项目符号的位置,但在一些浏览器中,这将导致一些显示问题,基于浏览器的布局你的网站的方式。
要让它以以下格式显示:
A B
C D
E
等等,使用以下方法:
ul li{
float: left;
width: 50%;//helps to determine number of columns, for instance 33.3% displays 3 columns
}
ul{
list-style-type: disc;
}
这将解决显示列的所有问题。祝你一切顺利,谢谢@jaider,因为你的回复帮助我发现了这一点。
这里有一个可能的解决方案:
代码片段:
ul { 宽度:760 px; margin-bottom: 20 px; 溢出:隐藏; Border-top: 1px实心#ccc; } 李{ 行高:1.5 em; Border-bottom: 1px实体#ccc; 浮:左; 显示:内联; } #双里{ 宽度:50%; } < ul id = "双" > <李>第一李< / > <李>第二李< / > <李>第三李< / > <李>第四李< / > < / ul >
这就完成了。 对于3列使用里宽为33%,对于4列使用25%,依此类推。