html - 水平和垂直列表项之间的不同间距

标签 html css

水平和垂直列表项之间的空间看起来不同,即使两种布局的边距、填充、高度和宽度完全相同。我希望它们相同,我知道我可以手动调整边距或填充,但为什么它们不一样,有没有一种简单的方法可以使它们保持一致?谢谢。

HTML

<ul class="horizontal">
    <li></li>
    <li></li>
    <li></li>
</ul>
<div class="clear"></div>
<ul class="vertical">
    <li></li>
    <li></li>
    <li></li>
</ul>

CSS

ul li {
    padding: 0;
    margin: 10px;
    width: 13px;
    height: 13px;
    background: #333333;
    border-radius: 50%;
}

.horizontal li {
    float: left;
}

在此处查看结果:http://jsfiddle.net/bingjie2680/3ZbkQ/

最佳答案

垂直li的边距是collapsing .您可以通过以下方式解决此问题:

.vertical li {
    float: left; /*a floated box's margin does not collapse with any other box */
    clear: left; /* Push each succeeding li to a new line, 
                    though not needed on the first */
}

Updated fiddle

关于html - 水平和垂直列表项之间的不同间距,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22201594/

相关文章:

javascript - 寻找一种通过 Nodejs 在 HTML 中运行 Javascript 函数的方法

javascript - $(document).ready() 和在正文末尾包含脚本有什么区别?

CSS 背景图像拒绝在 ASP.Net MVC 中显示

javascript - 如何在 node.js 中加载 CSS 文件?

防止沿 y 轴滚动的 CSS 样式

javascript - 如何在使用键盘而不是下一个()时隐藏()元素

html - 使用 VBScript 正则表达式替换 HTML

html - 使用 flex 和 border-box 等宽

javascript - 使用粘性页脚的内容的 100% 高度

html - 如何实现像鸡蛋一样的边框半径