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

Uniapp在Vue环境中引入iconfont图标库(详细教程)

Uniapp在Vue环境中引入iconfont图标库(详细教程)

开发工具环境HBuilderX4.29

1 iconfont图标库下载

在项目根目录下创建common文件夹,我们需要把一些常用的全局样式放入此文件夹下

image-20241030203444790

阿里巴巴icon官网:https://www.iconfont.cn/,进入官网后注册登录账号,然后进入icon图标库

image-20241030182942324

搜索商城,寻找任意喜欢的图标字库,例如:

image-20241030201519519

找到需要的图标分别加入购物车里

image-20241030201723648

点击购物车,将刚才添加的图标添加到我的项目里(如果没有项目则自己新建一个)

image-20241030201842041

进入我的项目里,然后下载刚刚添加的图标库文件

image-20241030202310336

2 iconfont图标库引入

下载完成后复制这三个字体文件到自己的项目工程里,放在static下的font文件夹下,如果没有则新建

image-20241030202609563

image-20241030202952564

复制iconfont.css文件到项目工程的common目录下,同时打开iconfont.css进行编辑,把URL字体库换成自己项目的相对路径

image-20241030202349831

image-20241030203111574

以下是对三种字体库的说明

字体格式文件体积加载速度浏览器支持备注
TTF较大较慢几乎所有现代浏览器文件格式简单,易于生成和编辑
WOFF中等较快广泛支持具有版权保护机制
WOFF2最小最快现代浏览器压缩率更高,文件体积更小

实际应用

在实际项目中,通常会同时提供多种格式的字体文件,以便浏览器根据自身支持的格式选择最合适的字体文件。例如:

@font-face {
  font-family: "iconfont"; /* Project id 4729183 */
    src: url('../static/font/iconfont.woff2?t=1730288388234') format('woff2'),
         url('../static/font/iconfont.woff?t=1730288388234') format('woff'),
         url('../static/font/iconfont.ttf?t=1730288388234') format('truetype');
}

这样做的好处是:

  • 兼容性:确保所有浏览器都能找到合适的字体文件。
  • 性能:现代浏览器优先选择 WOFF2 文件,提高加载速度。

在app.vue下加入全局样式引入代码,原代码保留,新增引入iconfont图标库

<style lang="scss">
	/*引入iconfont图标库*/
	@import '@/common/iconfont.css';
</style>

3 iconfont图标库使用

官方示例说明

打开之前下载的示例文件,在我们之前下载的文件中有一个使用示例html,打开后有使用说明

image-20241030204903995

在我们项目中比较常用的是直接class类引用的方式,可以查看引用说明

image-20241030205004759

打开之前新建的test测试页添加如下测试代码,将之前下载的四个图标全部引用

<template>
	<view>
		<text class="iconfont icon-gouwuche"></text>
		<text class="iconfont icon-fenlei"></text>
		<text class="iconfont icon-shouye"></text>
		<text class="iconfont icon-wode"></text>
	</view>
</template>

<script setup>

</script>

<style lang="scss" scoped>
	/* 添加一些样式 */
	text {
		color: red;
		margin-right: 60rpx;
		font-size: 100rpx;
	}
</style>

将Uniapp项目运行到微信小程序或者本机的app上,微信小程序运行后显示效果

image-20241030204749811

http://www.kler.cn/a/383607.html

相关文章:

  • 网络编程——TCP通信练习
  • 接口测试用例设计的关键步骤与技巧解析!
  • Pytorch实现transformer语言模型
  • <Project-20 YT-DLP> 给视频网站下载工具 yt-dlp/yt-dlp 加个页面 python web
  • Postman断言与依赖接口测试详解!
  • 如何找到养生生活视频素材?推荐几个优秀网站
  • 7.2、实验二:被动接口和单播更新
  • 拼多多客服安抚顾客话术大全
  • Bert框架详解(下)
  • conda 设置代理
  • 基于SpringBoot的医疗陪护系统设计与实现(源码+定制+开发)
  • apache-seata-2.1.0 AT模式使用篇(配置简单)
  • linux 进程调度学习笔记
  • 数据结构和算法-01背包问题02-背包问题常见解决方案
  • 道品科技智能水肥一体化技术要点及实施效果
  • 运行 lio-sam 定位建图算法,error解决
  • Oracle与SQL Server的语法区别
  • 斯坦福医学部发布GPT润色本子教程
  • CPU算法分析LiteAIServer视频智能分析平台视频智能分析:抖动、过亮与过暗检测技术
  • 【fiddler】用fiddler实现手机抓包
  • 2024版最新CTF资源库分享:CTF入门知识手册、CTF工具、练习靶场。零基础入门到精通,看完这篇就足够了~
  • 【C++】详细介绍:priority_queue的使用、适配器、deque介绍、仿函数
  • OpenHarmony 入门——ArkUI 自定义组件间的父子双向同步状态装饰器@Link语法(四)
  • Java 文件操作与IO流
  • JavaAPI(1)
  • 鸿蒙开发:ArkUI Toggle 组件