Vue或uniapp引入自定义字体

一、为什么引入字体

对于大部分APP或网站而言,字体是很重要的一部分。在前端开发中,选用合适的字体往往会极大地提升网站的视觉体验。然而,网页中默认字体的种类和风格有限,且在不同的设备、浏览器上渲染效果不尽相同。因此,很多开发者会选择自定义字体来提升用户体验。

二、如何引入字体并使用

vue引入字体有多种方法,下面将介绍其中两种较为常见的方式。

1. 使用@font-face

下载需要的字体到本地文件夹中

在vue项目下的src/assets文件夹下创建fonts文件夹,放入需要用的字体

在uniapp项目下创建fonts目录,放入需要用的字体

复制代码
// 在css文件中定义字体
@font-face {
  font-family: 'CustomFont';
  src: url('@/fonts/custom-font.ttf');
}

body {
  font-family: 'CustomFont';
}

view {
  font-family: 'CustomFont';
}

这种方式相对简单,定义了一个自定义字体,然后直接在需要应用字体的地方引入即可。需要注意的是,在font-face中除了src属性,还应该添加font-family属性,用来说明自定义字体的名称。通过在css中的font-family设置,即可随时使用。

2. 动态引入字体

也可以在运行时动态引入字体,可以使用以下代码:

复制代码
const fontFace = new FontFace('CustomFont', 'url(./fonts/custom-font.ttf)');
fontFace.load().then(() => {
  document.fonts.add(fontFace);
}).catch((error) => {
  console.error(error);
});

这样可以避免默认情况下浏览器会对所有字体进行预加载,从而降低页面的加载速度。

相关推荐
UXbot3 小时前
UI设计工具推荐合集
前端·人工智能·ui
码路星河3 小时前
基于 Vue + VueUse 的 WebSocket 优雅封装:打造高可用的全局连接管理方案
javascript·vue.js·websocket
攻城狮7号3 小时前
不懂代码也能造?TRAE+GLM-4.6 手把手教你搭心理咨询智能客服小程序
python·小程序·uni-app·vue·trae·glm我的编程搭子·glm-4.6
敲敲了个代码3 小时前
如何优化批量图片上传?队列机制+分片处理+断点续传三连击!(附源码)
前端·javascript·学习·职场和发展·node.js
@AfeiyuO3 小时前
Vue 引入全局样式scss
前端·vue·scss
光影少年3 小时前
flex布局和grid布局区别,实现两边固定布局中间自适应
前端·css3·web·ai编程
全栈测试笔记4 小时前
异步函数与异步生成器
linux·服务器·前端·数据库·python
EndingCoder4 小时前
配置 tsconfig.json:高级选项
linux·前端·ubuntu·typescript·json
木风小助理4 小时前
JavaStreamAPI的性能审视,优雅语法背后的隐形成本与优化实践
java·前端·数据库
QQ588501985 小时前
Python_uniapp-心理健康测评服务微信小程序的设计与实现
python·微信小程序·uni-app