• HOME > 
  • CSS > 
  • CSSのinline-flexの使いどころ【flexによる横...

CSSのinline-flexの使いどころ【flexによる横並びとの違い】

投稿日:

このページにはGoogleアドセンス広告とアフィリエイト広告が含まれています。

カテゴリー記事のアイキャッチ画像

本記事は執筆時点(2024年05月29日)の情報をベースにしております。掲載している情報が最新ではない可能性がありますので何卒ご容赦ください。

広告
広告

inline-flexとは?

inline-flexはCSSのdisplayプロパティの値の一つで、横並びレイアウトを作ることができる「flex」にインライン効果を持たせた性質があります。

inline-flexの書き方

実は私がinline-flexの存在に気づいたのはごく最近。それまでflexを使ってレイアウトを作ってきたのですが、inline-flexはflexの痒い所に手が届く働きをしてくれるので重宝しています。状況によって使い分けることでレイアウトがぐっと組み立てやすくなりました。

この記事ではinline-flexとflexの違いと活用方法についてまとめたいと思います。

inline-flexとflexの違い

どちらも子要素を横並びにする性質を持ちますが、要素自身がブロックレベルになるかインラインレベルになるかという大きな違いがあります。

flexはブロックレベル要素なので、横幅が親要素の幅まで広がり、上下に改行を伴います。

flexの例

一方inline-flexは、その名の通りインラインレベル要素なので、要素自身の幅(子要素の幅)しか持たず、上下に他のインラインレベル要素があれば改行せずに横並びになります。

inline-flexの例

親要素にtext-alignを設定したときの違い

親要素の横幅目一杯に広がるflexは、親要素にtext-alignを指定しても影響を受けません。

text-alignの例

対して、inline-flexはインラインレベル要素になるので親要素のtext-alignプロパティで横方向の位置を設定できます。

text-alignの例

inline-flexの使い所は「子要素を横並びにしたいが、その要素自体も別の要素の一部として配置したい」ときと言えるでしょう。

まとめ

以上がCSSのinline-flexとflexの違いです。どちらが良い悪いではなく、状況に応じて適した方を使うことが大切です。

広告
広告

関連する記事

サムネイル

CSSの疑似クラスnth-childとnth-of-type……

2024年11月07日
疑似クラスnth-childとnth-of-typeについて CSSの疑似クラス「:nth-child」と「:nth-of-type」はどちらも何番目の要素とい […]
サムネイル

CSSのみでスムーススクロールを実装する【scroll-be……

2024年08月01日
スムーススクロールはCSSだけで実装できる? これまでスムーススクロールはJavaScriptで実装するものと思い込んでいたのですが、先日ふとしたきっかけで、C […]
サムネイル

CSSのセレクターで前方一致や部分一致を使って指定する方法

2024年05月16日
CSSでは属性の値を前方一致や部分一致でセレクターに指定できます。IDやクラス以外のhrefといった属性値であれば指定できるので、例えばリンク先ごとに処理を変えることも可能です。
サムネイル

CSSでテーブルの先頭行や先頭列を固定する方法【sticky……

2024年04月12日
CSSのpositionプロパティの「sticky」を使えば、CSSだけでテーブルの行も列も簡単に固定することができるのでご紹介します。情報量の多い表を作る場合は、スクロールした時に項目名などの行や列は固定させておいたほうが見やすくなります。
サムネイル

CSSのwhite-spaceプロパティの使い方【半角スペー……

2024年03月07日
SSのwhite-spaceは、テキストにおける半角スペース・改行・タブの扱いと折り返しの有無を設定するプロパティです。
サムネイル

CSSのメディアクエリでスマホでのホバーの挙動の対策を行う【……

2023年10月01日
最終更新日:2023年09月28日
要素をタップしたときにホバー時のスタイルが適用され続けるという経験はありませんか?CSSだけで簡単にスマホでの疑似要素「hover」の挙動の対策を行う方法をご紹介します。