Tailwind CSS
Tailwind CSS 是一个实用优先的 CSS 框架,与 Next.js 配合使用效果极佳。
安装 Tailwind
安装 Tailwind CSS 相关包并运行 init
命令生成 tailwind.config.js
和 postcss.config.js
文件:
npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -p
配置 Tailwind
在 tailwind.config.js
中,添加需要使用 Tailwind CSS 类名的文件路径:
/** @type {import('tailwindcss').Config} */
module.exports = {
content: [
'./app/**/*.{js,ts,jsx,tsx,mdx}', // 注意新增了 `app` 目录
'./pages/**/*.{js,ts,jsx,tsx,mdx}',
'./components/**/*.{js,ts,jsx,tsx,mdx}',
// 如果使用 `src` 目录:
'./src/**/*.{js,ts,jsx,tsx,mdx}',
],
theme: {
extend: {},
},
plugins: [],
}
无需修改 postcss.config.js
。
导入样式
将 Tailwind CSS 指令添加到应用程序的 全局样式表中,Tailwind 将使用这些指令注入生成的样式,例如:
@tailwind base;
@tailwind components;
@tailwind utilities;
在 根布局 (app/layout.tsx
) 中导入 globals.css
样式表,将样式应用到应用程序的每个路由。
import type { Metadata } from 'next'
// 这些样式将应用到应用程序的每个路由
import './globals.css'
export const metadata: Metadata = {
title: 'Create Next App',
description: 'Generated by create next app',
}
export default function RootLayout({
children,
}: {
children: React.ReactNode
}) {
return (
<html lang="en">
<body>{children}</body>
</html>
)
}
// 这些样式将应用到应用程序的每个路由
import './globals.css'
export const metadata = {
title: 'Create Next App',
description: 'Generated by create next app',
}
export default function RootLayout({ children }) {
return (
<html lang="en">
<body>{children}</body>
</html>
)
}
使用类名
安装 Tailwind CSS 并添加全局样式后,您可以在应用程序中使用 Tailwind 的实用类。
export default function Page() {
return <h1 className="text-3xl font-bold underline">Hello, Next.js!</h1>
}
export default function Page() {
return <h1 className="text-3xl font-bold underline">Hello, Next.js!</h1>
}
与 Turbopack 一起使用
从 Next.js 13.1 开始,Turbopack 已支持 Tailwind CSS 和 PostCSS。