コンテンツへスキップ

アセット、メタデータ、CSS

スタイリングのヒント

役立つスタイリングのヒントをいくつかご紹介します。

以下のセクションを読んでください。アプリに変更を加える必要はありません!

clsxライブラリを使用したクラスの切り替え

clsx は、クラス名を簡単に切り替えることができるシンプルなライブラリです。npm install clsxまたはyarn add clsxを使用してインストールできます。

詳細については、そのドキュメントをご覧ください。基本的な使用方法を以下に示します。

  • typeを受け入れ、'success'または'error'となるAlertコンポーネントを作成したいとします。
  • 'success'の場合、テキストの色を緑にします。'error'の場合、テキストの色を赤にします。

まず、CSSモジュール(例:alert.module.css)を次のように記述します。

.success {
  color: green;
}
.error {
  color: red;
}

そして、次のようにclsxを使用します。

import styles from './alert.module.css';
import { clsx } from 'clsx';

export default function Alert({ children, type }) {
  return (
    <div
      className={clsx({
        [styles.success]: type === 'success',
        [styles.error]: type === 'error',
      })}
    >
      {children}
    </div>
  );
}

PostCSS設定のカスタマイズ

設定なしで、Next.jsはPostCSSを使用してCSSをコンパイルします。

PostCSSの設定をカスタマイズするには、postcss.config.jsという名前のトップレベルファイルを作成できます。Tailwind CSSなどのライブラリを使用している場合に便利です。

Tailwind CSSを追加する手順を以下に示します。まず、パッケージをインストールします。

npm install -D tailwindcss autoprefixer postcss

次に、postcss.config.jsを作成します。

// postcss.config.js
module.exports = {
  plugins: {
    tailwindcss: {},
    autoprefixer: {},
  },
};

tailwind.config.jscontentオプションを指定してコンテンツソースを設定することをお勧めします。

// tailwind.config.js
module.exports = {
  content: [
    './pages/**/*.{js,ts,jsx,tsx}',
    './components/**/*.{js,ts,jsx,tsx}',
    // For the best performance and to avoid false positives,
    // be as specific as possible with your content configuration.
  ],
};

PostCSS設定のカスタマイズの詳細については、PostCSSのドキュメントをご覧ください。

Tailwind CSSを簡単に始めるには、こちらの例をご覧ください

Sassの使用

Next.jsでは、.scss.sassの両方の拡張子を使用してSassをインポートできます。CSSモジュール.module.scssまたは.module.sass拡張子を使用して、コンポーネントレベルのSassを使用できます。

Next.jsの組み込みSassサポートを使用する前に、sassをインストールしてください。

npm install -D sass

このレッスンの内容は以上です!

Next.jsの組み込みCSSサポートとCSSモジュールの詳細については、CSSドキュメントをご覧ください。