在做 GithubProfile 项目的时候,使用了数字动画展示的效果,如My GithubProfile页面中的commits,stars以及followers数字。实际使用中,由于数字字体不等宽,造成在数字增长动画时很明显的震颤,体验非常不好。

这里我最终使用了CSS的 font-feature-settings 的属性来解决了这一问题,先来看解决前后的效果对比图。

使用CSS3 font-feature-settings特性减除字体动画震颤效果

font-feature-settings

font-feature-settings 是CSS的高级特性,用来提供对OpenType字体图形展示调节, MDN·font-feature-settings 。

首先CSS3提供了一组与OpenType字体特性显示映射的属性和值,这里我们首先利用了 font-variant-numeric ,并将其值设为 tabular-nums ,这表示要求字体的数字图像保持尺寸一致,并像在表格中一样对齐,这等同于OpenType字体中的 tnum

当没有对应的属性映射时,我们则可以使用 font-feature-settings 属性,这里我们直接将其设为要求的OpenType属性 tnum

font-feature-settingsfont-variant-numeric 属性可以同时应用,它们其中任何之一都可以达到相同的效果,但是为了更多的兼容支持,对它们同时做了定义。

兼容性

font-feature-settings兼容性:

使用CSS3 font-feature-settings特性减除字体动画震颤效果

font-variant-numeric兼容性:

在CanIUse数据库中未找到结果,贴上MDN的兼容性说明

使用CSS3 font-feature-settings特性减除字体动画震颤效果

可以看出 font-feature-settings 的主流浏览器兼容支持比较好,所以使用时优先利用该特性。

Demo对比

这里给出 montserrat 字体在开启该特性前后的效果

总结

以上所述是小编给大家介绍的使用CSS3 font-feature-settings特性减除字体动画震颤效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?