Web前端开发网

fly63.com

首页 资源 工具 文章 教程 栏目
  • 在线搜索
  • 文章标签
  • 广告合作
  • 赞助一下
  • 关于我们
资源推荐
阿里云优惠券
卓越的云计算技术和服务提供商
腾讯云优惠券
云服务器,云数据库,CDN,域名注册等多种云计算服务
扣子Coze
职场AI,就用扣子
豆包AI
字节跳动旗下 AI 智能助手
即梦AI
一站式智能创作平台,即刻造梦
AiPPT
全智能AI一键生成 PPT
堆友AI
零门槛,多风格AI绘画免费生成,电商海报设计神器
蜂小推
不扣量的项目推广平台
SpeedAI
一键去重、降AIGC率、数据可视化、论文写作

资源分类

AI智能 酷站推荐 招聘/兼职 框架/库 模块/管理 移动端UI框架 Web-UI框架 Js插件 Jquery插件 CSS相关 IDE环境 在线工具 图形动效 游戏框架 node相关 调试/测试 在线学习 社区/论坛 博客/团队 前端素材 图标/图库 建站资源 设计/灵感 IT资讯
网站收录 / 问题反馈

UnoCSS

分享
复制链接
新浪微博
QQ 好友

扫一扫分享

网站地址:https://unocss.dev/
GitHub:https://github.com/unocss/unocss
网站描述:一个即时的原子化 CSS 引擎
访问官网
GitHub

Unocss 是一个即时的原子化 CSS 引擎,旨在灵活和可扩展。核心是不拘一格的,所有的 CSS 工具类都是通过预设提供的。


概念-原子化CSS

原子化 CSS 是一种 CSS 的架构方式,它倾向于小巧且用途单一的 class,并且会以视觉效果进行命名。

听起来厉害,但实现的最终方式超级简单,核心就是预置一大堆 class 样式,尽量将这些 class 样式简单化、单一化,在开发过程中,可以直接在 dom 中写预置好的 class 名快速实现样式,而不需要每次写简单枯燥大量的 css 样式,如下代码所示:

  1. 先预置一组class列表
.m-10 { margin: 10px; }
.p-5 { padding: 5px; }
.text-red { color: red; }
 // 无数个....
  1. 编码时在dom中直接写class名,快速实现样式
<div>
  测试dom
</div>

而预置的class列表中的样式,有着一定的规律,开发者可以通过学习快速掌握,利用多个class在dom中的组合快速实现效果


UnoCSS 做了哪些事

按 UnoCSS 作者的说法,UnoCSS 并非要替代 Tailwind CSS 而是从另一个角度使原子化CSS在业务中融合的更完美。

UnoCSS 作者是 Vite 团队成员,我觉得正是因为他作为 Vite 的开发者,对于工程化构建具有很高的敏感度,所以才能创造出 UnoCSS 将原子化的CSS与前端工程融合到极致。

那么 UnoCSS 做了哪些事呢:

1、按需生成

生成业务真正使用到的 class ,同时在开发和生产环境使用

对比 Tailwind CSS 只在生产环节清除无引用代码,UnoCSS 在开发环节也通过文件监听按需传输,获得更快地性能(虽然已经很快了,但再快一点总归是个提升嘛)

传统的方式

2、极具灵活性

UnoCSS 对自己定位是一个 CSS 引擎而非一个框架,所以它与 Tailwind CSS 应该是包含关系,UnoCSS 作为规则的制定者,而 Tailwind CSS 可以作为其中的一组 preset

import UnocssPlugin from '@unocss/vite'
import PresetTachyons from '@unocss/preset-tachyons'
import PresetBootstrap from '@unocss/preset-bootstrap'
import PresetTailwind from '@unocss/preset-tailwind'
import PresetWindi from '@unocss/preset-windi'
import PresetAntfu from '@antfu/oh-my-cool-unocss-preset'

export default {
  plugins: [
    UnocssPlugin({
      presets: [
        // PresetTachyons,
        PresetBootstrap,
        // PresetTailwind,
        // PresetWindi,
        // PresetAntfu
        // 选择其中一个...或多个!
      ]
    })
  ]
}

属性化书写 class 名

// 将冗长的 calss 按类型区分,更方便阅读理解
<button>
  Button
</button>

// 改变为
<button 
  bg="blue-400 hover:blue-500 dark:blue-500 dark:hover:blue-600"
  text="sm white"
  font="mono light"
  p="y-2 x-4"
  border="2 rounded blue-200"
>
  Button
</button>

在自定义规则上,UnoCSS 提供更加灵活的静态&动态匹配规则。

编译进一步优化(比如不再解析AST),生产构建速度再度提升。

UnoCSS 等于是做了个更上层的引擎,以后再有新的原子化CSS框架也可以兼容进来了,省得你有选择困难症。


适用场景

在一些简单的业务场景上,原子化CSS确实有非常大的优势,比如快速开发响应式H5,业务复杂度低的中后台系统,简单的官网页面。

而在一些复杂的业务场景,比如复杂的C端业务,大型的系统就不在那么适用了。

仅供个人学习参考/导航指引使用,具体请以第三方网站说明为准,本站不提供任何专业建议。如果地址失效或描述有误,请联系站长反馈~感谢您的理解与支持!

链接: https://fly63.com/nav/4028

更多»
热门资源
less
一个CSS预处理器,意味着它扩展了CSS语言,增加了允许变量,混合,函数和许多其他技术的功能
官网
GitHub
sass
成熟、稳定和强大的CSS扩展语言
官网
GitHub
postcss
PostCSS是一个使用JavaScript插件来转换CSS的工具。
官网
GitHub
stylus
Stylus是一个高效、动态以及丰富的CSS预处理器
官网
GitHub
animate.css
齐全的CSS3动画库
官网
GitHub
Metro UI
基于平板界面设计CSS库是一种界面展示技术
官网
GitHub
Spectre.css
轻量响应式 CSS 框架
官网
GitHub
water.css
只需添加CSS框架即可应用样式,无需定义元素类
官网
GitHub
DropCSS
一个用来清理无用 CSS 的小工具
点击进入
GitHub
Pattern.css
一个CSS库,使用美丽的图案填充空的背景。
官网
GitHub
three-dots
一组CSS加载动画,它由三个点组成,而这些点仅由单个元素组成
官网
GitHub
CSSeffectsSnippets
提供了漂亮的CSS动画
官网
GitHub
类似于UnoCSS的资源
Titanic
一套非常漂亮的SVG图标悬停动画效果
官网
GitHub
CJSS
一个基于 CSS 的 Web 框架
官网
GitHub
CSS Effects
一个 CSS 动效相关的网站
官网
GitHub
EnjoyCSS
在线CSS代码可视化工具
官网
Css3pie
使用PIE对IE进行CSS3兼容
官网
GitHub
Primer.style
GitHub开发的一个开源CSS框架
官网
GitHub
Reseter.css
结合Normalize.css 和 reset.CSS的替代方案
点击进入
GitHub
css-blocks
一款CSS 解决方案,实现组件的样式隔离
官网
GitHub
目录

手机扫一扫预览

》
分享组件加载中...
首页 技术导航 在线工具 技术文章 教程资源 前端标签 AI工具集 前端库/框架 实用工具箱 广告合作 关于我们

Copyright © 2018 Web前端开发网提供免费在线工具、编程学习资源(教程/框架/库),内容以学习参考为主,助您解决各类实际问题,快速提升专业能力。