Tailwind的安装,配置,使用步骤

🚀 一、Tailwind 简介

Tailwind CSS 是一种"原子化 CSS"框架。

特点是:

  • 不再手写样式文件,而是直接在 class 中写样式类名;
  • 可快速构建响应式布局;
  • 可自定义主题、颜色、间距、字体等。

⚙️ 二、安装与配置

✅ 1. 新建项目

使用 Vite 创建前端项目(推荐):

perl 复制代码
# 使用 npm
npm create vite@latest my-project

# 或使用 pnpm
pnpm create vite my-project

进入项目目录:

bash 复制代码
cd my-project

✅ 2. 安装 Tailwind CSS

在项目中安装 Tailwind CSS 和相关工具:

复制代码
npm install -D tailwindcss postcss autoprefixer

初始化配置文件:

csharp 复制代码
npx tailwindcss init -p

这会自动生成两个文件:

arduino 复制代码
tailwind.config.js
postcss.config.js

✅ 3. 配置 tailwind.config.js

修改内容如下:

less 复制代码
/** @type {import('tailwindcss').Config} */
export default {
  content: [
    "./index.html",
    "./src/**/*.{js,ts,jsx,tsx}", // 让 Tailwind 扫描这些文件
  ],
  theme: {
    extend: {}, // 可以在这里自定义颜色、字体、间距等
  },
  plugins: [],
}

✅ 4. 在 CSS 中引入 Tailwind

打开或新建文件 src/index.css(或 src/style.css),加入以下内容:

less 复制代码
@tailwind base;
@tailwind components;
@tailwind utilities;

✅ 5. 在入口文件中导入样式

main.jsmain.tsx 中引入刚才的 CSS 文件:

arduino 复制代码
import './index.css'

✅ 6. 启动项目

arduino 复制代码
npm run dev

打开浏览器访问显示的本地地址(通常是 http://localhost:5173),即可使用 Tailwind。


🧱 三、简单示例

🔹 示例 1:按钮样式

ini 复制代码
<button class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded">
  提交
</button>

效果:蓝色圆角按钮,悬停变深。


🔹 示例 2:响应式卡片布局

ini 复制代码
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 p-4">
  <div class="bg-white shadow-md rounded-lg p-4">卡片1</div>
  <div class="bg-white shadow-md rounded-lg p-4">卡片2</div>
  <div class="bg-white shadow-md rounded-lg p-4">卡片3</div>
</div>

🔹 示例 3:全屏居中内容

scss 复制代码
<div class="flex items-center justify-center h-screen bg-gray-100">
  <h1 class="text-4xl font-bold text-blue-600">Hello Tailwind!</h1>
</div>

🎨 四、自定义主题(可选)

tailwind.config.js 中扩展主题:

css 复制代码
theme: {
  extend: {
    colors: {
      primary: '#2563eb',
      secondary: '#9333ea',
    },
    spacing: {
      128: '32rem',
    },
  },
},

使用自定义颜色:

css 复制代码
<div class="bg-primary text-white p-4">自定义主色</div>
相关推荐
看晴天了2 小时前
nestjs学习, PM2进程守护,https证书配置
前端
blues_C2 小时前
Playwright MCP vs Chrome DevTools MCP vs Chrome MCP 深度对比
前端·人工智能·chrome·ai·chrome devtools·mcp·ai web自动化测试
木心操作3 小时前
nodejs动态创建sql server表
前端·javascript·sql
一个很帅的帅哥3 小时前
Vue中的data为什么是函数?
前端·javascript·vue.js·data
南屿im3 小时前
用 Node.js 开发命令行工具:打造你的高效 CLI
前端·javascript
ObjectX前端实验室4 小时前
【react18原理探究实践】render阶段【首次挂载】
前端·react.js
ObjectX前端实验室4 小时前
【react18原理探究实践】组件的 props 和 state 究竟是如何确定和存储的?
前端·react.js
fxshy5 小时前
解决 Web 应用加载地图资源时的 HTTP 与 HTTPS 混合内容问题
前端·网络协议·http
一个很帅的帅哥5 小时前
Vue keep-alive
前端·javascript·vue.js·keep-alive