[問題] 用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