Tailwind CSS 实用技巧

· BlogAI
#Tailwind CSS #CSS #Tips

Tailwind CSS 实用技巧

Tailwind CSS 是一个实用优先的 CSS 框架,可以大大提高开发效率。

1. 使用 @apply 提取重复样式

当你发现重复使用相同的类组合时,可以使用 @apply 提取:

.btn-primary {
  @apply px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors;
}

2. 自定义配置

tailwind.config.js 中扩展默认主题:

export default {
  theme: {
    extend: {
      colors: {
        brand: {
          50: '#f0f9ff',
          500: '#0ea5e9',
          900: '#0c4a6e',
        },
      },
      fontFamily: {
        sans: ['Inter', 'sans-serif'],
      },
    },
  },
};

3. 响应式设计

Tailwind 的响应式前缀让移动优先设计变得简单:

<div class="text-sm md:text-base lg:text-lg">
  响应式文本
</div>

断点:

  • sm: 640px
  • md: 768px
  • lg: 1024px
  • xl: 1280px
  • 2xl: 1536px

4. 暗色模式

启用暗色模式支持:

// tailwind.config.js
export default {
  darkMode: 'class', // 或 'media'
};

使用:

<div class="bg-white dark:bg-gray-900 text-gray-900 dark:text-white">
  支持暗色模式的内容
</div>

5. 任意值

使用方括号语法应用任意值:

<div class="w-[137px] bg-[#1da1f2] top-[117px]">
  自定义值
</div>

6. 组合选择器

使用 grouppeer 实现复杂交互:

<!-- Group -->
<div class="group">
  <img class="group-hover:scale-110 transition-transform" />
  <p class="group-hover:text-blue-600">悬停时改变</p>
</div>

<!-- Peer -->
<input type="checkbox" class="peer" />
<label class="peer-checked:text-blue-600">复选框标签</label>

7. 容器查询

Tailwind 3.2+ 支持容器查询:

<div class="@container">
  <div class="@lg:text-xl">
    容器大时显示大文本
  </div>
</div>

8. 动画和过渡

内置动画类:

<div class="animate-spin">旋转</div>
<div class="animate-pulse">脉冲</div>
<div class="animate-bounce">弹跳</div>

自定义过渡:

<div class="transition-all duration-300 ease-in-out hover:scale-105">
  平滑过渡
</div>

9. 插件生态

推荐插件:

npm install -D @tailwindcss/typography
npm install -D @tailwindcss/forms
npm install -D @tailwindcss/aspect-ratio

使用:

export default {
  plugins: [
    require('@tailwindcss/typography'),
    require('@tailwindcss/forms'),
  ],
};

10. 性能优化

清除未使用的样式

Tailwind 自动清除生产环境中未使用的样式。

JIT 模式

Just-In-Time 模式按需生成样式,开发时更快:

export default {
  mode: 'jit', // Tailwind 3+ 默认启用
};

11. 调试技巧

使用浏览器扩展:

  • Tailwind CSS IntelliSense (VS Code)
  • Tailwind Shades (Chrome)

查看生成的 CSS:

npx tailwindcss -o output.css

12. 组件库集成

Tailwind 可以与组件库很好地配合:

  • Headless UI
  • Radix UI
  • DaisyUI
  • Flowbite

最佳实践

  1. 保持一致性 - 使用设计系统
  2. 避免过度使用 @apply - 保持实用优先
  3. 使用语义化命名 - 提取组件时使用有意义的名称
  4. 移动优先 - 从小屏幕开始设计
  5. 利用配置 - 自定义主题而不是硬编码值

总结

Tailwind CSS 提供了强大而灵活的工具集,掌握这些技巧可以让你的开发更加高效。

记住:

  • 实用优先,但不要过度
  • 充分利用配置系统
  • 保持代码可维护性

Happy coding! 🎨