当前位置: 首页 > news >正文

Nuxt3中使用UnoCSS指南

Nuxt3中使用UnoCSS指南

UnoCSS是一个高度可定制的、原子化CSS引擎,可以轻松集成到Nuxt3项目中。下面介绍如何在Nuxt3中安装和配置UnoCSS。

安装步骤

安装UnoCSS的Nuxt模块:

# 使用pnpm
pnpm add -D unocss @unocss/nuxt# 使用yarn
yarn add -D unocss @unocss/nuxt# 使用npm
npm install -D unocss @unocss/nuxt# 使用bun
bun add -D unocss @unocss/nuxt

在这里插入图片描述

基础配置

nuxt.config.ts文件中添加UnoCSS模块:

export default defineNuxtConfig({modules: ['@unocss/nuxt',],
})

在这里插入图片描述

创建uno.config.ts配置文件:

import { defineConfig } from 'unocss'export default defineConfig({// UnoCSS配置选项
})

预设配置

你可以在nuxt.config.ts中直接配置UnoCSS,启用不同的预设:

export default defineNuxtConfig({modules: ['@unocss/nuxt',],unocss: {// 预设uno: true,            // 启用@unocss/preset-unoattributify: true,    // 启用@unocss/preset-attributifyicons: {              // 启用@unocss/preset-iconsextraProperties: {display: "inline-block",},customizations: {iconCustomizer(collection, icon, props) {// 默认图标大小props.width = "1.5em";props.height = "1.5em";},},},// 核心选项shortcuts: [],rules: [],},
})

安装图标预设(可选)

如果需要使用图标预设,需要额外安装:

pnpm add -D @unocss/preset-icons @iconify-json/mdi @iconify-json/mdi-light

使用rem转px预设(可选)

如果需要默认生成px单位而非rem单位:

  1. 安装rem转px预设:
npm i -D @unocss/preset-rem-to-px
  1. nuxt.config.ts中配置:
import presetUno from "@unocss/preset-uno";
import presetRemToPx from "@unocss/preset-rem-to-px";
import presetAttributify from "@unocss/preset-attributify";
import presetIcons from "@unocss/preset-icons";export default defineNuxtConfig({modules: ['@unocss/nuxt'],unocss: {presets: [presetUno(),presetAttributify(),presetIcons(),presetRemToPx(),],shortcuts: [],rules: [],},
})

VS Code智能提示

安装UnoCSS的VS Code扩展可以获得智能提示支持。如果遇到问题,在nuxt.config.js中添加:

// 添加以下代码以启用UnoCSS VS Code扩展
import { defineNuxtConfig } from "nuxt/config";

然后尝试禁用并重新启用扩展。

UnoCSS会自动注入uno.css入口文件,不需要手动导入。这种轻量级且高度可定制的CSS解决方案可以显著提高Nuxt3项目的开发效率。

相关文章:

  • 论人际关系发展的阶段
  • 树莓派学习专题<9>:使用V4L2驱动获取摄像头数据--设定分辨率和帧率
  • Go设计模式-观察者模式
  • 【量化交易笔记】17.多因子的线性回归模型策略
  • JAVA---字符串
  • docker配置mysql遇到的问题:网络连接超时、启动mysql失败、navicat无法远程连接mysql
  • Nginx技术培训文档
  • 【Linux网络#1】:网络基础知识
  • strings.TrimLeft 使用详解
  • ssm乡村合作社商贸网站设计与实现(源码+lw+部署文档+讲解),源码可白嫖!
  • 网络流之最大流(Dinic)
  • 26考研——指令系统_CISC 和 RISC 的基本概念(4)
  • [详细无套路]MDI Jade6.5安装包下载安装教程
  • setup语法糖
  • AudioVideoMerger 下载与使用
  • ZBrush2025建模软件下载 ZBrush中文版免费下载 ZBrush版本大全
  • c++初始化数组
  • python输出
  • 利用知识图谱提升测试用例生成精准性:基于Graphiti与DeepSeek-R1的实战指南
  • 23种设计模式-行为型模式之迭代器模式(Java版本)
  • 日均新开三家“首店”,上海的“首发经济”密码是什么?
  • 委员呼吁提高政府机构电话号码准确性,辽宁阜新回应
  • 四川甘孜州白玉县发生4.9级地震,震源深度10千米
  • 讲座预告|大国博弈与创新破局:如何激励中国企业创新
  • 安徽铁塔回应“指挥调度中心大屏现不雅视频”:将严肃处理
  • “两高”司法解释:升档为境外非法提供商业秘密罪的量刑标准