2024年:如何根据项目具体情况选择合适的CSS技术栈
(请注意,这是一篇主观且充满个人技术偏好的文章)
方案一: antd/element ui/类似竞品
适合情形: 项目没有设计师 or 大部分人不熟悉CSS且项目赶时间。
antd自带样式,开发人员无需学习CSS,仅需查看参考文档就可以制作出基本不丑的UI界面。
方案二: TailwindCSS + shadcn/ui
适合情形: 设计师对还原度和定制化有较高要求 and 大部分人熟悉CSS and 项目赶时间。
使用headless组件库可以充分将样式和逻辑解耦,满足设计师高度定制化的需求。
shadcn/ui的理念是目前headless组件库的最高效的使用方式。它没有对底层headless组件库进行任何封装,而是提供丰富和高质量的示例代码。开发者只需选择自己需要的组件,将代码复制并粘贴到自己的项目中,并根据自己的需求进行自定义。
TailwindCSS可以提高样式开发速度和统一design token.
方案三: 现代CSS
适合情形: 大家希望磨练技术 and 项目不赶时间
现代 CSS 涵盖了许多新特性,适用于那些想要深入了解 CSS 并提升技术水平的团队。
不推荐方案: sass/less/stylus
现代CSS已经拥有了以上这些预处理器的有价值的关键功能。且样式本质上是HTML的配置,无法脱离HTML单独存在。脱离文档结构进行样式的抽象和复用就好像在构造一个精巧的空中楼阁,需要高水平的开发者长期小心翼翼地维护,否则一不小心就会坍塌。
总结
选择合适的 CSS 技术栈是一个重要的决策,每个方案都有其优势和限制。我们需要根据项目的具体情况,权衡各种因素,选择最适合的方案。