css 加载字体 兼容性如下使用方法CSSFontLoadingAPI使用方法

  ​一般来说,开发者对网页字体使用会相对接触比较少一些,使用最多也无非是 font-family ,以及可能会加载几个网络字体。

  加载字体可能会遇到些问题,在字体加载完成之前,网页文字会变成空白,直到字体加载完成,字体文件不大还好说,但是文件一大,就要等很久才能显示。

  可以使用如下方法来解决

  font-display

  css根据分辨率加载不同css_css 加载字体_css百度页面加载动画

  为了解决这种,CSS Fonts Module Level 3中添加了一个 font-display 属性,这个属性可以让浏览器立即使用备用字体css 加载字体,在web字体加载完成之后立即替换css 加载字体,并重新渲染。

  兼容性如下

  使用方法

  <pre class="corepress-code-pre">`@font-face {
font-family: 'family-name';
src: url('${url}');
font-display: swap;
}`</pre>

  CSS Font Loading API

  相对的在JavaScript层面上也有对应的字体解决方案,CSS Font Loading API可以监听加载事件,在加载完成后通过替换class也可以达到 font-display: swap的效果。

  <pre class="corepress-code-pre">`const font = new window.FontFace('fontFamilyName', 'url(${url})');
document.fonts.add(font);
font.load().then(info => {
document.body.style.fontFamily = 'fontFamilyName';
}).catch(err => {
console.log(err);
});`</pre>

文章由官网发布,如若转载,请注明出处:https://www.veimoz.com/1430
0 评论
642

发表评论

!