CSS の設定と CSS フレームワークの適用⚓︎
AlesInfiny Maia OSS Edition では、特定の CSS フレームワークを採用することを推奨しているわけではありません。 本章では、一例として Tailwind CSS を導入する手順を紹介しますが、実際の開発プロジェクトでは、プロジェクトの特性に応じた技術を選定してください。 Tailwind CSS を使用しないプロジェクトの場合、本章の手順は実行する必要がありません。
Tailwind CSS⚓︎
Tailwind CSS は、 あらかじめ用意されたユーティリティクラスを組み合わせることで、 CSS ファイルを記述せずにデザインを実現する、ユーティリティファーストな CSS フレームワークです。 本ページに記載している出力例は、 Tailwind CSS v4.1.12 を使用したものです。バージョンが異なる場合、出力内容は異なる可能性があります。
Tailwind CSS のインストール⚓︎
公式ドキュメント に従って、 Tailwind CSS と Vite のプラグインをインストールします。
1 | |
Tailwind CSS の設定⚓︎
ブランクプロジェクトの作成 を実行すると、デフォルトでは ./src/assets/base.css と ./src/assets/main.css の 2 つの CSS ファイルが作成されます。 サンプルアプリケーションでは base.css に統一します。 main.css を削除し、 base.css を次のように書き換えます。
| base.css | |
|---|---|
1 2 3 | |
あわせて、 ./src/main.ts の import を以下のように書き換えます。
| main.ts | |
|---|---|
1 | |
Tailwind CSS のプラグインを使用するために、 Vite の設定ファイルを更新します。 次のように vite.config.ts を変更します。
| vite.config.ts | |
|---|---|
1 2 3 4 | |
ワークスペースの直下で下記のコマンドを実行し、正常にビルドできることを確認してください。 ./dist/assets/ 配下に CSS ファイルが出力されます。
1 | |
Tailwind CSS の適用確認⚓︎
Tailwind CSS が正常に適用されていることを確認します。 確認のために、./src/views/HomeView.vue に次のようなコードを挿入します。
| HomeView.vue | |
|---|---|
1 2 3 4 5 6 | |
ワークスペースの直下で再度ビルドし、開発サーバーを立ち上げます。
1 2 | |
ターミナルに表示される URL へアクセスして、青色の AlesInfiny の文字列が下線つきで表示されていることを確認してください。
デフォルトで作成された CSS ファイルを削除したことで、デフォルトのアプリケーションの表示にはスタイル崩れが起きていますが、問題ありません。
Tailwind CSS 用の Stylelint の設定⚓︎
Tailwind CSS に固有の構文に対して不要な警告が出力されないように、 Stylelint の設定を変更します。 ワークスペース直下の .stylelintrc.js に次のような設定を追記します。
| Tailwind CSS 用の .stylelintrc.js | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | |
ワークスペースの直下で Stylelint を実行し、正常に終了することを確認してください。
1 | |
Tailwind CSS 用の Prettier の設定⚓︎
Tailwind CSS のユーティリティクラスの順序は開発者によってバラつきが出やすいので、 Prettier によってフォーマットします。 公式のプラグイン prettier-plugin-tailwindcss をインストールします。 ワークスペース直下で、下記のコマンドを実行します。
1 | |
ワークスペース直下の prettierrc.js に、 プラグイン用の設定を追加します。
| Tailwind CSS 用の prettierrc.js | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 | |
ワークスペースの直下で Prettier を実行し、正常に終了することを確認してください。
1 | |