[问题] 用CSS排版自动适应宽度的inline项目表

楼主: danny0838 (道可道非常道)   2018-03-01 04:22:17
如题,假设我的 HTML 原始码像这样:
<ul class="my-custom-class">
<li>项目一</li>
<li>项目二</li>
<li>项目三</li>
...
</ul>
我希望让这些项目用以下方式排版:
1. 每个项目宽度为10em:第1项从0em开始,第2项从10em开始,像这样:
                       ↓容器宽
项目1       项目2       项目3
项目4       项目5       项目6
2. 文字不在项目内折行:例如容器宽23em,第3项宽7em,则第3项从第2行0em开始
(而不是从第1行20em开始再把部分字符折到下一行)
                       ↓容器宽
项目1       项目2       
项目3文字稍多   项目4       项目5
3. 如果一个项目宽度超过10em,则其宽度延展为10em的整数倍:
例如第1项从0em开始、宽12em,则第2项从20em开始,依此类推。如下:
                                 ↓容器宽
项目1不巧字数稍微多了点        项目2       项目3
项目4       项目5       项目6
4. 万一有项目的宽度超过容器宽,则由0em开始,并且把放不下的字符折到下一行:
                       ↓容器宽
项目1
项目2的文字恰好长得很离谱很离谱很离谱离谱很离
谱很离谱      项目3       项目4
项目5       项目6
请教各位高手:这样的显示效果要怎么用纯CSS做出来?
作者: ymcheung (ymc)   2018-03-01 14:40:00
还没有试 不过感觉可以用 min-width: max-content;搭配 max-width: 你的宽度; 来用
作者: Rplus (R+) (9527)   2018-03-06 23:34:00
第四个条件不是正常的 block 只能用 inline 处理但 inline 并无法让你自由处理宽度, CSS 应该是无解

Links booklink

Contact Us: admin [ a t ] ucptt.com