【Vue工程】010-UnoCSS 即时按需原子 CSS 引擎

news/2025/1/15 18:45:46/

【Vue工程】010-UnoCSS 即时按需原子 CSS 引擎

文章目录

  • 【Vue工程】010-UnoCSS 即时按需原子 CSS 引擎
  • 一、概述
    • 1、简介
    • 2、官网
  • 二、基本使用
    • 1、安装
    • 2、修改 `vite.config.ts`
    • 3、根目录创建 `uno.config.ts`
    • 4、在 `main.ts` 中引入
    • 5、VS Code 安装 UnoCSS 插件
    • 6、在组件中使用
    • 7、访问 `http://localhost:5173/home`
  • 三、预设

一、概述

1、简介

UnoCSS 是一个轻量级、可扩展和零配置的 CSS 框架,旨在提供简洁、灵活且高效的样式开发体验。它遵循类似于 Tailwind CSS 的原则,通过使用类名来应用样式,从而提供快速而直观的样式编写方式。

UnoCSS 的设计目标是提供最小化的样式,同时保持灵活性和可定制性。它提供了一组基础样式规则和常用的样式变体,如边框、背景、文字、布局等,可以轻松地在项目中使用。

与其他 CSS 框架不同的是,UnoCSS 不包含任何默认主题或设计样式,这使得它非常适合定制化和与现有设计系统的集成。你可以根据项目的需求自由地定义样式和配色方案,以实现完全定制化的外观和风格。

除了基本样式规则外,UnoCSS 还提供了一些可选的预设(presets),如 Uno、Mini、Wind、Attributify、Tagify、Icons、Web Fonts、Typography 和 Rem-to-px。这些预设提供了一些常见的样式和功能,可以根据需要进行选择和集成。

UnoCSS 通过提供零配置的使用方式,使得它非常易于上手和集成到现有项目中。它还支持响应式设计,可以轻松地创建适应不同屏幕尺寸和设备的样式。

总而言之,UnoCSS 是一个简洁、灵活且可定制的 CSS 框架,它以零配置的方式提供了快速而直观的样式开发体验。它的设计使得开发者可以轻松地定制样式,使其适应各种项目需求,并与现有的设计系统无缝集成。

2、官网

官网

https://unocss.dev/

文档

https://unocss.dev/integrations/vite

交互搜索

https://unocss.dev/interactive/

二、基本使用

1、安装

pnpm add -D unocss

2、修改 vite.config.ts

// vite.config.ts
import UnoCSS from 'unocss/vite'
import { defineConfig } from 'vite'export default defineConfig({plugins: [UnoCSS(),],
})

3、根目录创建 uno.config.ts

import { defineConfig, presetAttributify, presetUno } from 'unocss';export default defineConfig({/** 排除 */exclude: ['node_modules'],/** 预设 */presets: [/** 属性化模式 & 无值的属性模式 */presetAttributify(),/** 默认预设 */presetUno(),],/** 自定义规则 */rules: [['zb-text', { color: 'blue' }],['zb-fs', { 'font-size': '28px' }],['zb-fb', { 'font-weight': 'bolder' }],],/** 自定义快捷方式 */shortcuts: {'zb-t': 'zb-text zb-fs zb-fb',},
});

4、在 main.ts 中引入

import 'virtual:uno.css'

5、VS Code 安装 UnoCSS 插件

image-20230512125922125

6、在组件中使用

<template><div class="zb-text zb-fs zb-fb">UnoCSS</div><div class="zb-t">快捷方式</div>
</template><script lang="ts" setup></script><style lang="scss" scoped></style>

7、访问 http://localhost:5173/home

image-20230512132258084

三、预设

https://unocss.dev/presets/

PackageDescription
@unocss/preset-uno默认预设
@unocss/preset-mini精简但必要的规则和变体
@unocss/preset-windTailwind / Windi CSS 紧凑预设
@unocss/preset-attributify启用属性化模式以适用其他规则
@unocss/preset-tagify启用标签化模式以适用其他规则
@unocss/preset-icons由 Iconify 提供支持的纯 CSS 图标解决方案
@unocss/preset-web-fonts网页字体支持(Google Fonts 等)
@unocss/preset-typography排版预设
@unocss/preset-rem-to-px将 rem 转换为 px 以供实用工具使用

http://www.ppmy.cn/news/67885.html

相关文章

身为企业管理者,必须了解的财务知识

财务管理工作是企业管理工作中的核心内容&#xff0c;也是企业管理工作中的难点内容&#xff0c;对于集团企业来讲更是任务艰巨而又问题频出。然而&#xff0c;信息时代的来临为解决和完善企业财务管理问题提供了新思路&#xff0c;就集团企业而言&#xff0c;财务管理信息化基…

k8s架构了解

Kubernetes(k8s)是用于自动部署、扩展和管理“容器化应用程序”的开源系统 k8s由control plane以及cluster nodes构成 control plane control plane是维护所有k8s对象记录的系统&#xff0c;持续管理着对象状态&#xff0c;并且对集群的变化做出响应&#xff0c;并使状态匹…

《论文阅读》基于提示的知识生成解决对话情感推理难题

《论文阅读》基于提示的知识生成解决对话情感推理难题 前言摘要作者新观点问题定义模型框架Global ModelLocal ModelPrompt Based Knowledge Generation分类器实验结果问题前言 你是否也对于理解论文存在困惑? 你是否也像我之前搜索论文解读,得到只是中文翻译的解读后感到失…

MYSQL基本操作

数据库的列类型 int&#xff1a;整型 用于定义整数类型的数据 float&#xff1a;单精度浮点4字节32位 准确表示到小数点后六位 double&#xff1a;双精度浮点8字节64位 char&#xff1a;固定长度的字符类 用于定义字符类型数据&#xff0c;固定10字节&#xff0c;如果你设定5字…

Hash碰撞

Hash碰撞 什么是Hash碰撞 Hash碰撞是指两个不同的输入值&#xff0c;经过哈希函数的处理后&#xff0c;得到相同的输出值&#xff0c;这种情况被称之为哈希碰撞。 例如&#xff1a;两个不同的对象&#xff08;object1和object2的值&#xff09;经过Hash函数计算后的&#xf…

unity打造路径编辑与导航系统

Unity是一款非常流行的游戏引擎&#xff0c;它提供了丰富的工具和API&#xff0c;方便开发者快速创建游戏。其中&#xff0c;路径编辑与导航系统是游戏开发中非常重要的一部分&#xff0c;可以帮助玩家更好地探索游戏世界&#xff0c;提升游戏体验。本文将详细介绍如何在Unity中…

阿里云争食币圈

阿里云的触手正在向币圈延伸。几天前&#xff0c;阿里云与Avalanche区块链和MUA DAO联合推出Cloudverse&#xff0c;为想要在链上部署元宇宙的企业提供一站式解决方案。 Avalanche是典型的币圈项目&#xff0c;链上的一切价值流转都以加密货币结算。此次合作释放出阿里云在Web…

设计模式-策略模式

策略模式 文章目录 策略模式什么是策略模式为什么要用策略模式如何使用策略模式1、策略的定义2、策略的创建3、策略的使用 如何优化有状态的策略模式总结 什么是策略模式 定义一族算法类&#xff0c;将每个算法分别封装起来&#xff0c;让它们可以互相替换。策略模式可以使算法…