原生/VUE 使用自定义字体

一、原生使用自定义字体

共两种,外链及内部声明

  • 首先下载字体包解压,创建文件夹放置字体相关文件
  • 可在使用页面直接声明引入使用(序号2.),也可以创建css文件通过外链引用(序号1.)
  • css文件内容,即@font-face{...}
  • 使用时的font-family,需要和@font-face中声明的font-family一致
xml 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- 1.通过外链引入字体 -->
    <!-- <link rel="stylesheet" href="./a.css"> -->
</head>
<style>
    /* 2.通过页面生命字体  */
    @font-face {
        /* 声明字体 */
        font-family: "阿里妈妈东方大楷 Regular";
        /* 引入字体文件,注意路径 */
        src: url("./font/AlimamaDongFangDaKai-Regular.ttf"),
        /* 使用自定义字体默认隐藏,swap:后备文本立即显示直到自定义字体加载完成后再使用自定义字体渲染文本。 */
        /* font-display: swap; */
    }
    div {
        font-size: 40px;
    }
    /* 使用字体,名字需要和@font-face中的font-family一致 */
    .app {
        font-family: "阿里妈妈东方大楷 Regular";
    }
</style>
<body>
    <div class="app">这是一段测试文字,用于测试CSS字体。</div>
    <div class="text">这是第二段测试文字,用于测试CSS字体。</div>
</body>
</html>

二、VUE使用自定义字体

页面声明方法与原生同理,不做过多演示,本次仅演示外部引入

  • 首先下载字体包解压,在assets中创建文件夹文件夹放置外部资源-字体相关文件
  • 创建css文件,声明要使用的字体
  • 声明的字体名字随意,但使用时必须对应声明的名字,css内容如下:
css 复制代码
/* css文件 */
@font-face {
    /* 声明字体 */
    font-family: "阿里妈妈东方大楷 Regular";
    /* 引入字体文件,注意路径 */
    src: url("./font/AlimamaDongFangDaKai-Regular.ttf"),
    /* 使用自定义字体默认隐藏,swap:后备文本立即显示直到自定义字体加载完成后再使用自定义字体渲染文本。 */
    /* font-display: swap; */
}
@font-face {
    /* 声明字体 */
    font-family: "le";
    /* 引入字体文件,注意路径 */
    src: url("./font1/DingTalk-JinBuTi.ttf"),
    /* 使用自定义字体默认隐藏,swap:后备文本立即显示直到自定义字体加载完成后再使用自定义字体渲染文本。 */
    /* font-display: swap; */
}
  • 页面通过import引入,对应使用外部字体
  • 注意引入方式路径及对应字体名字
xml 复制代码
<template>
  <div class="box">
    <div class="app">这是一段测试文字,用于测试CSS字体。</div>
    <div class="text">这是第二段测试文字,用于测试CSS字体。</div>
  </div>
</template>
<script setup>
import { ref, reactive, toRefs, watch, computed, defineProps } from "vue";
import { useRoute, useRouter } from "vue-router";
const route = useRoute();
const router = useRouter();
const data = reactive({});
// const { } = toRefs(data)
</script>
<style scoped lang="scss">
// 引入css文件
@import "../assets/a.css";
div {
  font-size: 40px;
}
/* 使用字体,名字需要和css文件@font-face中的font-family一致 */
.app {
  font-family: "阿里妈妈东方大楷 Regular";
}
.text {
  font-family: "le";
}
</style>
相关推荐
JustHappy17 分钟前
「chrome extensions🛠️」我写了一个超级简单的浏览器插件Vue开发模板
前端·javascript·github
Loo国昌19 分钟前
Vue 3 前端工程化:架构、核心原理与生产实践
前端·vue.js·架构
sg_knight21 分钟前
拥抱未来:ECMAScript Modules (ESM) 深度解析
开发语言·前端·javascript·vue·ecmascript·web·esm
LYFlied22 分钟前
【每日算法】LeetCode 17. 电话号码的字母组合
前端·算法·leetcode·面试·职场和发展
开发者小天22 分钟前
react中useEffect的用法,以及订阅模式的原理
前端·react.js·前端框架
前端白袍42 分钟前
Vue:如何实现一个具有复制功能的文字按钮?
前端·javascript·vue.js
new code Boy1 小时前
escape谨慎使用
前端·javascript·vue.js
奶球不是球1 小时前
elementplus组件中el-calendar组件自定义日期单元格内容及样式
javascript·css·css3
叠叠乐2 小时前
robot_state_publisher 参数
java·前端·算法