html - 如何使用 CSS 水平分布元素?

标签 html css

<分区>

我想在一个栏上水平分布一些列表项,我想使代码模块化,以便在我插入更多时自动调整元素之间的空间。

我想要第一个元素在最左边,右边的元素在最右边,其余的分布在两者之间。它们彼此之间都有相等的空间。想想将一条线段分成几段,这些元素将标记分离点,以及原始线段的头/尾。

我尝试了几种解决方案并在网上找到了一些,但它们并不符合我的要求。根据我之前的类比,它们只是将所有内容居中,更像是将每个元素放在每个行片段的中间。

有人可以提供一个很好的 CSS 解决方案吗?

最佳答案

在使用inline-block、伪元素和text-align: justify;后你可以做你想做的事,但它只适用于IE8及以上版本。

代码如下:

<!-- HTML -->

<ul>
    <li>List Item 1</li>
    <li>List Item 2</li>
    <li>List Item 3</li>
    <li>List Item 4</li>
</ul>

​
/* CSS */

ul {
    text-align: justify;
}
ul:after {
    content: '';
    display: inline-block;
    width: 100%;
}
ul:before {
    content: '';
    display: block;
    margin-top: -1.25em;
}
li {
    display: inline-block;
    margin-right: -.25em;
    position: relative;
    top: 1.25em;
}

现场演示:http://jsfiddle.net/joshnh/UX9GU/

关于html - 如何使用 CSS 水平分布元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13505616/

相关文章:

html - 哪些 HTML 标签更适合金钱?

javascript - 我在 CSS 中设置了 HTML 元素的显示属性。但是,如果我在 javascript 中检查该值,它会显示空白

javascript - 字体调整 HTML

html - 为什么 google 字体在 safari 上的加载方式与 chrome 不同,我该如何解决?

asp.net - 设置标题的宽度和 GridView 的单元格

javascript - 在哪里将 html 添加到 MaterializeCSS 工具提示?

javascript - 如何创建 "Subscribe to Calendar"链接到适用于 Android 版 Google 日历的 ics 文件?

html - 如何将子 div 设置为父级的高度(100%)?

javascript - 如何制作列表和缩略图 View

html - 为什么 parent 的 child 会复制 parent 的背景图片?