前々から興味はあったTailwind CSS。なかなか仕事で使う機会がなく、そっと放置していたのですが、なんか新しいことも勉強しないとなということで、手を出してみることに。
まずは個人プロジェクトに導入して、いろいろと試してみようかと(途中で挫折しそうな気がしてますが)。
インストールからCSSファイルの作成まで
インストールの基本的な手順はTailwind CSSのサイトにあります。今回はPostCSSを使う方法で進めます。
これから書く手順は、上のリンクを参考にちょっと変更してます。
まずはTailwind CSSをインストールするディレクトリへ移動して、ターミナルで下のコマンドを入力し、package.jsonを作成します。
npm init -y
次に下のコマンドでTailwind CSSやPostCSSなどの必要なものをインストールし、続けてtailwind.config.jsの作成します。
npm install -D tailwindcss postcss postcss-cli autoprefixer npx tailwindcss init
作成されたtailwind.config.jsにテンプレートファイルのパスを追加。
/** @type {import('tailwindcss').Config} */ module.exports = { content: ["./src/**/*.{html,js}"], theme: { extend: {}, }, plugins: [], }
そして、postcss.config.jsを作成し、pluginsに追加。
module.exports = { plugins: { tailwindcss: {}, autoprefixer: {}, } }
srcディレクトリを作成し、その中にcssディレクトリを作成。そこにmain.cssを作成し、下のコードを追加。
@tailwind base; @tailwind components; @tailwind utilities;
package.jsonのscriptsに下のコードを追加。
"tailwindcss": "postcss ./src/css/main.css -o ./dist/css/output.css"
ターミナルで下のコマンドを入力。
npm run tailwindcss
distディレクトリのcssディレクトリにoutput.cssが作成されます。
さて、作成されたoutput.cssを開くと、ちょっとおかしなことに気が付きます。そう、Tailwind CSSの.pt-4
とか.flex
とかがまったく書かれてないのです。
ここで、先に設定をしておいたtailwind.config.jsの出番です。
srcディレクトリにindex.htmlを作成して、下のコードを追加して、ターミナルでnpm run tailwindcss
コマンドを入力してください。
<!doctype html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link href="/dist/css/output.css" rel="stylesheet"> </head> <body> <h1 class="text-3xl font-bold underline"> Hello world! </h1> </body> </html>
するとあら不思議、.text-3xl
、.font-bold
、.underline
がmain.cssに追加されるじゃないですか。
どうやら必要なクラスだけでCSSファイルを作成してくれるようです。
CSSが作成できるようになったので、次はHTMLファイルを監視して、Tailwind CSSを作成できるようにします。
検証環境
Tailwind CSS 3.1.8