在做 GithubProfile 項目的時候,使用了數字動畫展示的效果,如My GithubProfile頁面中的commits,stars以及followers數字。實際使用中,由于數字字體不等寬,造成在數字增長動畫時很明顯的震顫,體驗非常不好。
這里我最終使用了CSS的 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-settings 和 font-variant-numeric 屬性可以同時應用,它們其中任何之一都可以達到相同的效果,但是為了更多的兼容支持,對它們同時做了定義。
兼容性
font-feature-settings兼容性:

font-variant-numeric兼容性:
在CanIUse數據庫中未找到結果,貼上MDN的兼容性說明

可以看出 font-feature-settings 的主流瀏覽器兼容支持比較好,所以使用時優先利用該特性。
Demo對比
這里給出 montserrat 字體在開啟該特性前后的效果
總結
以上所述是小編給大家介紹的使用CSS3 font-feature-settings特性減除字體動畫震顫效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答