<ul></ul>
と<img />
?を使用して、CSSで次のレイアウトを実現することができます。
|-------------| (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
| image | (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
|-------------| (li) (li) (li) (li) (li)
(li) (li) (li) (li) (li) (li) (li) (li)
(li) (li) (li) (li) (li) (li) (li) (li)
JSfiddle ; float
、、inline-block
を使用してみましたが、要素display:table
の数が<li>
許容スペースを超えると、リスト全体が画像の下に移動します。この番号は毎回ランダムに生成されます。1から50まで変化する可能性があります。
私の現在のHTMLは次のとおりです。
<img src="" />
<ul>
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<!-- etc.. -->
</ul>
私が得た最高のレイアウトはbox-sizing
いくつかを使用することでしたpadding
:
|-------------| (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
| image | (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
| | (li) (li) (li) (li) (li)
|-------------| (li) (li) (li) (li) (li)
(li) (li) (li) (li) (li)
(li) (li) (li) (li) (li)
(li) (li) (li) (li) (li)
CSS3ベースのソリューションが受け入れられます。Javascriptベースのソリューションはそうではありません。