html - 带有缩小 HTML 的对齐水平列表

标签 html css

对于水平菜单,我想在整个宽度上对齐列表项

这个有效:

CSS:

ul {height: 1em;text-align: justify;overflow: hidden;padding-left: 0;}
li {display: inline-block;}
li:last-child {padding-left: 100%;}

HTML:

<ul>
    <li>flexible number</li>
    <li>and length of</li>
    <li>list items</li>
    <li>hidden</li>
</ul>

输出(线条显示 UL 的宽度):

|flexible number             and length of              list items|

如果我删除所有空格和换行符以缩小 HTML 输出,它就不再起作用了。

更小的 HTML:

<ul><li>flexible number</li><li>and length of</li><li>list items</li><li>hidden</li></ul>

看起来像这样:

|flexible numberand length oflist items                           |

是否有机会使用纯 CSS 恢复“正常”行为

请看一下这个 fiddle : http://jsfiddle.net/Tfranz/HpP99/

最佳答案

查看下面的 jsFiddle - 您应该能够使用 % 宽度和 float 来执行此操作而无需填充或边距。标准缩小不应影响结果。

http://jsfiddle.net/MNally/CWjMz/

HTML:

<div id="container">
    <ul id="the-list">
        <li>item1</li>
        <li>item1</li>
        <li>item1</li>
    </ul>
</div>

CSS:

div#container {
    width:100%;
    padding:0;
    margin:0;
}

ul#the-list {
    width:100%;
    text-align:center;    
}

li {
    float:left;
    display:inline;
    padding:0;
    margin:0;
    background:#c9c;
    width:33.333%;
}

我将边距/填充设置为“0”以说明不需要它们。您可以删除这些行。

关于html - 带有缩小 HTML 的对齐水平列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24781842/

相关文章:

css - 始终在底部显示 <tfoot> 页脚

html - 如何创建双列设计,当第一列已满时,它会自动显示在第二列?

javascript - 附加尾部选择选项以维持功能

javascript - 使用 python 脚本打印到 Chrome 控制台 - 如何调整以在 div 中打印?

css - 在 tablet View 中处理 Flexbox

javascript - 如何在不使用 setTimeout 的情况下恰好在 1 秒后停止关键帧动画? - 队列中的问题事件

javascript - 用 D3 和 Leaflet 重复 SVG

javascript - 为什么不应用 CSS 过渡?

html - CSS/HTML - DIV 不与底部对齐

html - 页脚未拉伸(stretch)至 100% 宽度