liタグを複数列で縦並びさせたいとき、超絶簡単な方法があった!

スポンサーリンク
CSS

liタグを、縦並びで、複数カラムで表示したいときの方法です。
言葉だけではうまく伝えられないので、さっそく紹介していきます。

方法1、2とも、HTMLは共通です。
山のラインナップの偏りはスルーしてください。。

【方法1】column-count

CSS

プレビュー

登山・トレッキングで行きたいところ

  • 長瀞
  • 高尾山
  • 筑波山
  • 阿蘇山
  • 屋久島
  • 箱根山
  • 日光白根山
  • 御嶽山
  • 高水三山
  • 大山
  • 金時山
  • 尾瀬
  • 乗鞍岳
  • 谷川岳
  • 富士山
  • いつかはマッターホルン…!

CSSはたった1行だけ!
お手軽ですね。

【方法2】flexbox

CSS

プレビュー

登山・トレッキングで行きたいところ

  • 長瀞
  • 高尾山
  • 筑波山
  • 阿蘇山
  • 屋久島
  • 箱根山
  • 日光白根山
  • 御嶽山
  • 高水三山
  • 大山
  • 金時山
  • 尾瀬
  • 乗鞍岳
  • 谷川岳
  • 富士山
  • いつかはマッターホルン…!

親要素(.column)の高さを調整しないと
折り返ってくれないのが引っかかりつつ、
他に良い方法もなかったので
当初はflexboxを使ってました。

が、column-countを知ると
CSS1行だけで折り返してくれて最高!
使わない理由が見つからないです。

2020.08.11追記

リストを縦並びで複数カラム表示したいときは
column-count1択だよね〜、と思って書いたこの記事でした。

リストの中のテキスト量が違うとき、
この方法だと自動的にいい感じの場所で折り返ってくれるのですが、
ここで折り返したい!という指定があるときは、flexboxの方が調整しやすいかもです。

リストの中のテキスト量が全部同じくらいの場合はcolumn-countでいいのですが、
左右n個ずつにして〜、と指定され、
それが右の方が圧倒的にテキスト量多かったりして……あああ!!!となったので、、

その場に応じて、臨機応変に使い分けてみてください。

コメント

タイトルとURLをコピーしました