CSS原子化
CSS 原子化
什么是 CSS 原子化
会提前定义很多 CSS 类,将 CSS 类的颗粒度细化到最小(所谓原子)。在需要样式时,在 html 写类名即可,不用再写 css 了。
1 |
|
优势
- 设立了一种必须遵守的样式规范
每个项目其实都有约定的规范,但随着人员的流动、屡次的迭代,可能规范就丢失了,因为没有成熟的体系。
增加复用性,减小 css 体积
确实能提升开发速度(熟练的话)
减小起名复杂度
更方便的响应式
1 |
|
1 |
|
劣势
- 学习成本较高
要记很多类。
- html 结构变得复杂,体积变大,难以调试(其实还好)
即使 HTML 因为类名过多造成体积增大,由于 class 高度相似,gzip 也将会得到一个很大的压缩比例(对于 gzip,重复度越高的文件可压缩的空间就越大)。
- 无法完全摆脱 css
一些情况下无法
- 样式覆盖问题
以下 red 与 blue 两个样式哪个会生效?无法确定。
1 |
|
TailWind CSS
最常用的原子化框架
文档
https://www.tailwindcss.cn/docs/guides/vue-3-vite
vscode 插件
Tailwind CSS IntelliSense 自动补全、高亮错误等功能
purgecss
打包之后发现包体增加了很多,这是因为打包时直接打包了整个tailwindcss的缘故,引入purgecss之后,会自动去除没有使用的css,直接减少css的体积。
参考
CSS原子化
http://example.com/2022/11/17/CSS原子化/