css - 如何使 float LI 平均共享其父 UL 宽度?

标签 css width html-lists stretch

前面的注释:我在提问之前确实寻找过答案,但我发现没有一个答案准确地解释了如何正确执行此操作。

我有一些 DIV,在我的某个地方有一个 UL,它应该延伸到父 DIV 的 100%,并且在 UL 中我有一定数量的 LI 元素(由于动态内容而变化)希望平等分享父 UL 提供给他们的空间(显然应该是 100%)。

我尝试了各种解决方案,例如 LI 上的 inline-block,以及 LI 上的 float:left 和自动宽度

我创建了一个JSFiddle在这里。

我怎样才能达到预期的结果(不使用JS)和至少主要的跨浏览器兼容性?

最佳答案

在 UL 上使用 display: table; 以及 width: 100%;,在 LI 上使用 display: table-cell;:

ul {
    display: table;
    width: 100%;
}
li {
    display: table-cell;
    background: #eee;
}

http://jsfiddle.net/Kyle_Sevenoaks/EfWze/1/

关于css - 如何使 float LI 平均共享其父 UL 宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12072463/

相关文章:

css - 带边框和背景图像的八边形

javascript - 等待背景视频完全加载,然后显示

javascript - 有没有办法在 SVG 元素中绘制光栅图像?

css - 如何让我的菜单栏不超出屏幕?

html - 如何在没有 "phantom"行的情况下创建包含两列内容的列表项?

html - 从外部 css 文件到 html 实现背景图像(链接到网站 url)

CSS - 从最后一个之前的DIV获取宽度

swing - JFrame Container 内JPanel 的宽度和高度为0,为什么?

jquery - 最后一个 HTML 列表项的圆底 Angular ?

html - 如何用元素符号居中无序列表?