【ているうぃんどしーえすえす】

Tailwind CSS とは?

💡 CSSを書かずに「クラス名の組み合わせ」でデザインする仕組み
📌 このページのポイント
Tailwind CSS ユーティリティファースト設計 従来のCSS .card {"{"} padding: 1rem; background: #fff; {"}"} Tailwind CSS <div class=" p-4 bg-white rounded-lg shadow "> vs 主なユーティリティクラス 余白 p-4 m-2 px-6 my-auto bg-blue-500 text-white レイアウト flex grid justify-center レスポンシブ md:flex lg:grid-cols-3 状態 hover: focus:
Tailwind CSSユーティリティファースト設計のイメージ
ひよこ ひよこ

Tailwind CSSって普通のCSSと何が違うの?

ペンギン先生 ペンギン先生

普通のCSSは「.button { color: red; padding: 10px; }」みたいに自分でクラスを作ってスタイルを書くよね。Tailwind CSSは最初から「text-red-500」「p-2」みたいなクラスが大量に用意されていて、HTMLにクラス名を並べるだけでデザインできるんだよ。

ひよこ ひよこ

クラス名がいっぱい並ぶと読みにくくない?

ペンギン先生 ペンギン先生

正直、最初は「class="flex items-center justify-between p-4 bg-white rounded-lg shadow-md"」みたいに長くなってびっくりすると思う。でも慣れると「CSSファイルをあちこち行き来する手間がない」のが快適に感じるようになるんだ。

ひよこ ひよこ

使わないクラスがいっぱいあったら重くならないの?

ペンギン先生 ペンギン先生

いい質問だね。Tailwindはビルド時にHTMLの中で実際に使われているクラスだけを残して、使っていないものは全部消してくれるんだ。だから最終的なCSSファイルはとても小さくなるよ。

ひよこ ひよこ

Bootstrapとどっちがいいの?

ペンギン先生 ペンギン先生

Bootstrapは「ボタン」「カード」みたいに完成品のパーツが用意されてて、すぐに見た目が整うのが強み。Tailwindは自由にカスタマイズしやすい代わりに、全部自分で組み立てる必要がある。プロトタイプを素早く作りたいならBootstrap、独自デザインを追求するならTailwindが向いてるよ。

ひよこ ひよこ

Tailwindにもデメリットってあるの?

ペンギン先生 ペンギン先生

「関心の分離」というWeb開発の原則(HTMLは構造、CSSは見た目を担当する)に反しているという批判はずっとあるんだ。特に大規模プロジェクトでデザインを一括変更したいとき、HTMLの中にスタイル情報が散らばっていると修正箇所を探すのが大変になる。Tailwindの@applyディレクティブやコンポーネント化で解決できる部分もあるけど、どこまでユーティリティクラスを使ってどこからコンポーネントに切り出すかの判断基準は、ベテランでもプロジェクトごとに迷うポイントなんだよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Tailwind CSS」って出てきたら「小さなCSSクラスを組み合わせてデザインするやり方だな」と思えればだいたいOK!
📖 おまけ:英語の意味
「tailwind」 = 追い風
💬 開発を後押しする「追い風」のようなCSSフレームワークという意味。CSSは「Cascading Style Sheets」の略だよ
← 用語集にもどる