横並びのリストを中央寄せ(センタリング)する方法!
箇条書きなど横並びのリストを中央寄せ(センタリング)する方法を解説します。float・flexbox・inline-blockなど横並びの方法ごとに中央寄せの方法をサンプルコード付きで紹介します!
横並びのリストを中央寄せ(センタリング)したい
横並びさせたリストを中央によせたいケースは現場ではよくあります。
一方で横並びの方法は「float
を使った方法」「inline
・inline-block
を使った方法」「flexbox
を使った方法」などいくつかあり、それぞれで中央寄せの方法は異なります。
この記事では横並びの方法毎に中央寄せ(センタリング)させる方法について解説していきます。
横並びのリストを中央寄せ(センタリング)する方法
それではそれぞれのリストの横並びの方法ごとに中央寄せの方法を解説していきます。
floatで横並びさせている場合
float
で横並びさせている場合で、下記のようにCSSを指定していくと中央寄せすることが出来ます。
.list
にleft: 50%
を設定し、左側の開始位置を半分の位置からスタートさせます。更にその中の.item
では逆にleft: -50%
とします。
この処理でfloat
した要素が真ん中に来ます。
display:flexで横並びさせている場合
フレックスボックスを使って横並びさせている場合ですが、中央寄せは下記の方法となります。
フレックスボックスの横方向の中央寄せはjustify-content: center
を指定すれば実現出来ます。
display:inlineで横並びさせている場合
アイテムをdisplay:inline
として横並びさせているときに中央寄せする方法は下記となります。
display:inline
としているアイテムの親要素(.list
)でtext-align: center
を指定するだけです。
ただしインラインを指定しているので、CSSでpadding
やmargin
などの余白調整がやりにくいなどデメリットも存在します。
display:inline-blockで横並びさせている場合
display: inline-block
で横並びさせている場合は、display: inline
と同じ方法で中央寄せが可能です。
インラインブロックの場合は、padding
やmargin
での余白調整が可能なため、インラインの場合のデメリット面を克服しています。
display:table-cellで横並びさせている場合
display: table-cell
で横並びさせている場合の中央寄せの方法は下記となります。
ブロック要素と同じくmargin: 0 auto
と、左右のmargin
にauto
を指定することで中央寄せとなります。
まとめ
いかがでしたでしょうか。リストの横並びを中央寄せする方法をサンプルコードとプレビュー付きで紹介してきました。
横並びの方法は多用にあり、それぞれの方法で中央寄せの方法も異なります。しっかり把握してきましょう。
また今回の方法はほとんどがwidth
を固定せずに実装している例となりますので、レスポンシブにも対応しているかと思います。
ぜひ一番やりやすいやり方を採用してみて下さい!
