返回列表 发布新帖
查看: 4|回复: 0

UnoCss和TailwindCss的区别

发表于 昨天 15:28 | 查看全部 |阅读模式

这里或许是互联网从业者的最后一片净土,随客社区期待您的加入!

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 zzz 于 2025-9-17 15:41 编辑

1. 工作原理与性能(根本性区别)
  UnoCss: 它的核心是一个引擎。它会在开发时动态的,按需的扫描你的源代码(如 src / 目录)。你用了什么类,它就只在最终的 CSS 中生成对应的规则。这意味着从开发到生产,你的 CSS 文件    始终是最小的。这带来了无与伦比的性能和开发体验,热更新(HMR)速度极快。
  Tailwind CSS: 它本质上是一个PostCss插件。在开发时,它会根据你的配置生成一个巨大的、包含所有可能类的css文件(可达数MB)。然后,你需要在生产构建时,依靠其内置的PrugeCss功能来   扫描你的源代码,删除所有未使用的样式。这个过程有时不够精确,可能导致误删,且开发阶段的超大 CSS 文件可能在某些环境下影响加载速度。
2. 可定制性与灵活性
  UnoCSS:它的设计哲学是“一切皆预设”。你可以自由组合各种预设,甚至可以在几行配置内创建一个属于自己的原子 CSS 框架。你可以定义自己的规则,例如:
  1. // unocss.config.js
  2. import { defineConfig, presetUno } from 'unocss'

  3. export default defineConfig({
  4. rules: [
  5. // 自定义规则:直接写 `m-10` 生成 `margin: 10px;`
  6. [/^m-(\d+)$/, ([, d]) => ({ margin: `${d}px` })],
  7. // 自定义规则:`bg-brand` 生成品牌色
  8. ['bg-brand', { 'background-color': '#f0f' }]
  9. ],
  10. presets: [
  11. presetUno() // 使用默认的 Uno 预设(类似 Tailwind)
  12. ],
  13. })
复制代码
3. 独特功能
  1. UnoCSS 的 Attributify 模式:这是解决 Tailwind 类名过长问题的优雅方案。它允许你将一个元素的类分组到多个属性中。
  1. <!-- Tailwind / 传统方式 -->
  2. <a-button class="bg-blue-400 hover:bg-blue-500 text-sm text-white font-mono font-light py-2 px-4 rounded border-2 border-blue-200">
  3. Button
  4. </a-button>

  5. <!-- UnoCSS Attributify 模式 -->
  6. <a-button
  7. bg="blue-400 hover:blue-500"
  8. text="sm white"
  9. font="mono light"
  10. p="y-2 x-4"
  11. border="2 rounded blue-200"
  12. >
  13. Button
  14. </a-button>
  15.   这让模板的可读性和组织性大大提高。</font>
复制代码
  2. UnoCSS 的图标集成:通过 preset-icons,你可以直接使用 Iconify 项目中的任何图标,只需一个类名。
  1. <!-- 直接使用 Carbon 设计的 "add" 图标 -->
  2. <div class="i-carbon-add" />
  3. <!-- 直接使用 Logos 的 Vue 图标 -->
  4. <div class="i-logos-vue" />
  5. 这在 Tailwind 中需要额外的安装和配置
复制代码
总结
UnoCSS 可以被看作是 Tailwind CSS 理念的一种更激进、更高效、更灵活的实现。它吸收了 Tailwind 和 Windi CSS 的优点,并在引擎层面进行了重构和优化。
    1. UnoCSS 像一家现代化、全自动的厨房,给你提供最顶尖的食材和厨具,你可以完全自由地制作任何你想吃的菜,甚至可以一键复制豪华餐厅的套餐。
    2. Tailwind CSS 像一家提供完整套餐的豪华餐厅,菜品丰富美味,你只需点餐即可。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright © 2001-2025 Suike Tech All Rights Reserved. 随客交流社区 (备案号:津ICP备19010126号) |Processed in 0.076283 second(s), 7 queries , Gzip On, MemCached On.
关灯 在本版发帖返回顶部
快速回复 返回顶部 返回列表