你有几个选择:
#ranks li {
float: left;
}
这将使您所有的列表项向左浮动,直到水平屏幕空间不再可用且不换行。或者,
#ranks li {
display: inline-block;
}
这也会使您的元素并排放置,但是将它们处理为块级元素。如果您不关心块级样式,可以选择直接使用内联显示:
#ranks li {
display: inline;
}
这将使列表项像其他内联元素(如<span>
或<a>
)一样处理。
列表项和它们的列表父元素上存在一些固有样式,您可能需要去除这些样式。请务必查看margin
和padding
。
示例:http://jsbin.com/iconud/edit#html,live
注意!
当列表项并排放置时,您可能会发现它们之间存在不美观的间隙。这是内联列表常见的问题。一种解决方法是删除相邻的列表项标签之间的换行空格:
<ul id="ranks"><li>
Index</li><li>
Contact</li><li>
Portfolio</li>
</ul>
或者把它们都内联起来,这样就不太容易分辨了:
<ul id="ranks">
<li>Index</li><li>Contact</li><li>Portfolio</li>
</ul>
这看起来有点刺眼。在HTML中,由于结束标签并不总是必需的,您也可以省略结束标签(尽管这让我有点紧张):
<ul id="ranks">
<li>Index
<li>Contact
<li>Portfolio
</ul>
多个列表也可以同时内联!
从一些评论中可以看出,问题提出者可能不仅想将列表项进行内联,还想将列表本身内联。如果是这种情况,将与上述规则相同的方法应用于列表本身:
#ranks,
#specs {
margin: 0;
padding: 0;
display: inline-block;
}
#ranks li,
#specs li {
display: inline-block;
border: 1px solid #CCC;
padding: 5px 10px;
}
我们使用选择器来搜索ID和标签,已经识别出了两组规则。您可以通过为列表应用通用类或基于共同父元素构建选择器来简化此过程。接下来是标记:
<ul id="ranks">
<li>Index</li>
<li>Contact</li>
<li>Portfolio</li>
</ul>
<ul id="specs">
<li>Foo</li>
<li>Bar</li>
</ul>
这将导致两个列表及其项以水平方式显示。
示例: http://jsbin.com/iconud/2/edit