基于 Tailwind CSS 的组件库,提供语义化组件、内置主题和可复用 UI 模块,加速开发。

所在地:
美国
语言:
en
收录时间:
2026-08-28

核心定位

daisyUI 是构建在 Tailwind CSS 之上的语义化组件库。它不替代 Tailwind,而是在其原子类基础上封装出一套可复用的 UI 模块,用更少的类名完成常见界面搭建。

与直接堆叠 Tailwind 工具类不同,daisyUI 引入了 btncardmodalnavbar 等语义化组件类。一个按钮不再需要组合六七个原子类,只需 btn btn-primary 即可获得完整样式,同时保留 Tailwind 的定制能力。

主要特性

语义化组件体系

daisyUI 提供约 50 余个常用组件,覆盖表单、导航、布局、反馈等场景:

类别 代表组件
操作 button、dropdown、modal
数据展示 card、table、stat、badge
导航 navbar、menu、breadcrumbs、tabs
表单 input、select、checkbox、toggle
反馈 alert、toast、loading、skeleton

每个组件均支持多种修饰类(modifiers),如 btn-outlinebtn-ghostbtn-sm,通过类名组合实现状态与尺寸变化。

内置主题系统

daisyUI 预设 30 余套主题,通过 data-theme 属性一键切换,无需额外配置。主题涵盖明暗模式及多种配色风格,同时支持通过 CSS 变量自定义品牌色、圆角、边框等设计令牌。

零配置接入

安装方式为 npm 包引入,并在 Tailwind CSS 配置的 plugins 数组中注册即可:

module.exports = {
  plugins: [require("daisyui")],
}

无需额外构建步骤,也无需引入独立 CSS 文件。对于不使用构建工具的场景,daisyUI 亦提供 CDN 引入方式。

与 Tailwind 的边界

daisyUI 的组件类本质上仍是 Tailwind 插件生成的 CSS 类,因此:

  • 可以继续使用全部 Tailwind 工具类进行细粒度调整
  • 组件样式遵循 Tailwind 的 @layer 机制,定制不会产生优先级冲突
  • 未使用的组件可通过配置禁用,避免产物体积膨胀

适用场景

  • 需要快速交付的中后台项目、管理面板、营销页面
  • 团队希望统一组件规范,但不引入 React/Vue 组件依赖
  • 已在用 Tailwind CSS,希望减少重复编写组件类的工作量

注意事项

daisyUI 输出的是纯 CSS 类,不包含 JavaScript 交互逻辑。Modal、dropdown 等组件的交互行为需要自行实现或配合 Alpine.js、原生 JS 处理。此外,部分组件类名与 Tailwind 默认类可能存在语义重叠,建议在引入前确认团队成员的命名习惯。

相关导航