前端引入外部字体

  前端引入外部字体


前端字体不美观,如何下载并引用外部字体呢?

字体文件下载

  很多网站都提供字体下载,其实我们需要的只是一个 ttf文件,这个网站可以提供免费的ttf字体文件下载:http://www.downcc.com/font/

格式转换

  不同的浏览器需要不同格式的字体文件,一般我们需要的有 eot svg ttf woff 这几类字体文件来适应不同的浏览器,这里提供一个可以格式转换的网站:https://www.fontke.com/tool/convfont/ 上传我们下载的 ttf文件 后,选择想要的格式,进行转换下载即可。

CSS引入

将下载好的几种格式文件放入我们的项目中(最好建一个文件夹专门用于存放字体),在 CSS 文件中写入:

/*引入外部字体*/

@font-face {
    font-family: "布丁体";
    src: url("../src/font/布丁体.eot"); /* IE9 */
    src: url("../src/font/布丁体.eot?#iefix")
    format("embedded-opentype"),  /* IE6-IE8 */
    url("../src/font/布丁体.woff") format("woff"), /* chrome firefox */

    url("../src/font/布丁体.ttf") format("truetype"), /* chrome firefox opera Safari Android IOS 4.2+ */

    url("../src/font/布丁体.svg#布丁体") format("svg");  /* IOS 4.2- */
    font-style: normal;
    font-weight: normal;
}

注意这里我用的是 “布丁体”,url() 里是我的字体文件在项目中的存放路径,根据自己引入的字体修改字体名字。

使用

.class {
    font-family: '布丁体', serif;
}

serif 是字体引入失败时的备用字体,也可以不添加。

参考文献

  1. http://www.one-net.cc/post/196.html
  2. https://my.oschina.net/Cubicluo/blog/888505
在 JavaScript 或前端开发中,引入外部字体通常不是通过 JavaScript 直接完成的,而是通过 CSS 来实现。然而,可以通过 JavaScript 动态操作 DOM 来加载字体文件或动态修改样式表以应用新字体。以下是几种常见的方法: ### 1. 使用 `@font-face` 引入外部字体 最常见的做法是通过 CSS 的 `@font-face` 规则来引入外部字体文件。可以在项目的 CSS 文件中添加如下代码: ```css @font-face { font-family: &#39;MyCustomFont&#39;; src: url(&#39;path/to/myCustomFont.woff2&#39;) format(&#39;woff2&#39;), url(&#39;path/to/myCustomFont.woff&#39;) format(&#39;woff&#39;); font-weight: normal; font-style: normal; } body { font-family: &#39;MyCustomFont&#39;, sans-serif; } ``` 为了确保字体文件能够快速加载,可以使用预加载技术[^2]。在 HTML 的 `<head>` 部分添加 `<link rel="preload">` 标签,提前加载字体资源: ```html <head> <link rel="preload" href="path/to/myCustomFont.woff2" as="font" type="font/woff2" crossorigin="anonymous"> <link rel="preload" href="path/to/myCustomFont.woff" as="font" type="font/woff" crossorigin="anonymous"> </head> ``` ### 2. 通过 JavaScript 动态加载字体 如果需要通过 JavaScript 来动态加载字体,可以使用以下方式创建一个 `<style>` 元素并插入到文档中: ```javascript const fontFaceStyle = document.createElement(&#39;style&#39;); fontFaceStyle.textContent = ` @font-face { font-family: &#39;DynamicCustomFont&#39;; src: url(&#39;https://example.com/fonts/DynamicCustomFont.woff2&#39;) format(&#39;woff2&#39;), url(&#39;https://example.com/fonts/DynamicCustomFont.woff&#39;) format(&#39;woff&#39;); font-weight: normal; font-style: normal; } body { font-family: &#39;DynamicCustomFont&#39;, sans-serif; } `; document.head.appendChild(fontFaceStyle); ``` ### 3. 使用 Google Fonts 等在线字体服务 许多开发者选择使用 [Google Fonts](https://fonts.google.com/) 提供的免费字体服务。只需在 HTML 文件的 `<head>` 中引入相应的字体链接即可: ```html <link href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap" rel="stylesheet"> ``` 然后在 CSS 中使用该字体: ```css body { font-family: &#39;Roboto&#39;, sans-serif; } ``` ### 4. 字体文件来源与下载地址 - **Google Fonts**: [https://fonts.google.com/](https://fonts.google.com/) - **Adobe Fonts**(原 Typekit): [https://fonts.adobe.com/](https://fonts.adobe.com/) - **Font Squirrel**: [https://www.fontsquirrel.com/](https://www.fontsquirrel.com/) 提供多种可商用的免费字体 - **Open Font Library**: [https://openfontlibrary.org/](https://openfontlibrary.org/) - **GitHub 上的开源字体项目**:例如 [https://github.com/google/fonts](https://github.com/google/fonts) 这些网站不仅提供字体文件的下载,还支持生成适用于网页的格式(如 `.woff`, `.woff2`),并且提供了详细的使用说明。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值