【发布时间】:2021-04-04 23:08:02
【问题描述】:
我已经玩了一段时间了,现在试图开始工作。我将发布一个指向我正在做的简化版本的链接。
我有一个 <ul> 设置为内联显示,每个 <li> 的宽度为 25%,从我能找到的所有内容中删除了填充和边距。理论上每个列表项不应该在容器中占据相等的空间吗?那么它不是。我很好奇选择菜单是否默认带有我不知道的额外填充。感谢你们提供的任何帮助。
这里是 HTML:
试试这个:
/*--CSS--*/
html body{
padding: 0;
margin: 0;
}
.container{
width: 100%;
height: 40px;
background: yellow;
text-align: center;
padding: 0;
margin: 0;
}
.container ul{
list-style: none;
height: 100%;
padding: 0;
width: 100%
}
.container ul li{
display: inline-block;
line-height: 40px;
padding: 0;
width: 25%;
float:left;
}
.container select{
height: 40px;
padding: 0;
background: orange;
}
<!--HTML-->
<section class="container">
<ul>
<li> one</li>
<li><select>
<option>TwoA</option>
<option>TwoB</option>
<option>TwoC</option>
</select>
</li>
<li>three</li>
<li>four</li>
</ul>
</section>
【问题讨论】:
-
有趣的问题。你可以 float:left 那些 li 项目,但我想你的问题是为什么 inline-block 不工作。
-
它们的宽度为 25%,但因为它们是
inline-blocks,它们之间会有空间,迫使最后一个到下一行。添加float: left以查看this effect。另外,第二个@CodyGuldner 的评论。 -
那行得通。谢谢@Jeroen。