tailwindcss-v4 について
Tailwind CSS v4 の CSS 中心の設定、ディレクティブ、バリアント、v3 からの移行をまとめたスキルです。Tailwind CSS で UI を構築・更新する開発者向けです。
主な機能
- 01@theme によるデザイントークン設定
- 02ユーティリティとバリアントの作成
- 03@source によるクラス検出の制御
- 04PostCSS と Vite の設定
- 05v3 設定からの移行
活用シーン
- 01CSS でプロジェクトのテーマを定義
- 02カスタムユーティリティとバリアントの追加
- 03クラスのセーフリスト化や外部ファイルの走査
- 04v3 の設定を v4 向けに更新
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ tlq5l/ tailwindcss-v4-skill --skill tailwindcss-v4インストール後、Claude Code で/tailwindcss-v4を入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
AGENTS.mdCONTRIBUTING.mdLICENSEREADME.mdmetadata.jsonpackage.json.github/ISSUE_TEMPLATE/bug_report.mdnew_rule.md.github/workflows/skill-ci.ymlrules/_sections.md_template.mdcustomization-custom-variant.mdcustomization-gradients.mdcustomization-theme-inline.mdcustomization-utility.mdcustomization-variant.mddirective-custom-variant.mddirective-source.mdmigration-container-queries.mdmigration-dark-mode.mdmigration-explicit-var.mdmigration-oklch-colors.mdmigration-ring-width.mdmigration-shadow-scale.mdsetup-entry-point.mdsetup-framework-nextjs.mdsetup-framework-vite.mdsetup-source-detection.mdsetup-theme-config.mdtheme-options.md詳細
Tailwind CSS v4 スキル
CSS ファーストの設定、新しいディレクティブ、v3 からの移行。
クイックリファレンス
v4 のエントリーポイント
@import "tailwindcss";
v3 の方法ではありません:
/* ❌ These cause errors in v4 */
@tailwind base;
@tailwind components;
@tailwind utilities;
主なディレクティブ
| ディレクティブ | 用途 |
|---|---|
@theme | デザイントークン(色、間隔、フォント)を定義します |
@utility | カスタムユーティリティクラスを作成します |
@variant | カスタムバリアント(hover、focus など)を定義します |
@source | クラスの検出とセーフリストを制御します |
@reference | CSS を出力せずに @apply を使用するためにインポートします |
テーマ設定(CSS ファースト)
@import "tailwindcss";
@theme {
--color-primary: #3b82f6;
--color-secondary: #64748b;
--font-display: "Inter", sans-serif;
--spacing-18: 4.5rem;
}
tailwind.config.js ではありません:
// ❌ v3 pattern - don't use in v4
module.exports = {
theme: {
extend: {
colors: { primary: '#3b82f6' }
}
}
}
カスタムユーティリティ
@utility content-auto {
content-visibility: auto;
}
/* Functional utility must end in -* */
@utility tab-* {
--tab-size: --value(--spacing-*, [integer]);
tab-size: var(--tab-size);
}
カスタムバリアント
新しいバリアントを定義するには @custom-variant を使用します(@variant ではありません)。
@custom-variant hocus (&:hover, &:focus);
/* Dark mode with class strategy */
@custom-variant dark (&:is(.dark *));
/* Body block with @slot */
@custom-variant hocus {
&:hover, &:focus { @slot; }
}
テーマ設定
@theme {
--color-primary: #3b82f6;
/* Clear namespace */
--color-*: initial;
}
テーマフラグ
default:デフォルトのテーマとマージしますinline:変数を出力に出力しますstatic:値を使用しますが、変数は出力しませんreference:値を使用しますが、CSS は出力しません
@theme inline {
--font-sans: "SF Pro Text", system-ui;
}
新しいグラデーション構文
<div class="bg-linear-to-r/oklch from-blue-500 to-purple-500"></div>
新しいバリアント
@min-[400px]:/@max-[600px]:(コンテナクエリ)starting:(@starting-style)details-content:(::details-content)inverted-colors:、noscript:、print:
クラスのセーフリスト
/* Inline safelist */
@source inline("bg-red-500 text-white hidden");
/* From external source */
@source "../content/**/*.md";
v3 からの移行
| v3 | v4 |
|---|---|
@tailwind base/components/utilities | @import "tailwindcss" |
tailwind.config.js theme.extend | @theme { --color-* } |
PostCSS の tailwindcss プラグイン | @tailwindcss/postcss |
設定値を使った @apply | 先に @reference をインポート |
PostCSS のセットアップ
// postcss.config.js
export default {
plugins: {
'@tailwindcss/postcss': {} // NOT 'tailwindcss'
}
}
Vite のセットアップ
// vite.config.ts
import tailwindcss from '@tailwindcss/vite'
export default {
plugins: [tailwindcss()]
}
コメント
Markdown 対応