CSS font-family的順序

2016年09月07日 13時51分 wanglinqiang整理

相信大家都知道基本的用法是這樣:

font-family:font1,font2,serif;

系統有font1就先用font1
如果使用者的系統字體沒有font1,就看他有沒有font2
如果都沒有,就改用瀏覽器指定的serif字體

如此一來可以透過技巧指定中英文不同字體,例

font-family:Arial,'新細明體',sans-serif;

遇到英文的時候,會先看Arial能不能用
因為可以用所以英文會先套用Arial字體
遇到中文的時候,會先看Arial能不能用
因為Arial沒有中文字不能用,所以就再看下一個'新細明體'
由於'新細明體'字體裡面有中文可以用,所以中文就套用了'新細明體'
阿萬一都通通沒有,就以瀏覽器指定的sans-serif字體為主
如果sans-serif字體沒有中文字
就會去找系統內的fallback順序找到中文字體

如果你反過來寫就沒有這個效果,例

font-family:'新細明體',Arial,sans-serif;

中英文都可以在'新細明體'裡面找到
所以中英文全部都會用'新細明體'來顯示
萬一系統沒有'新細明體'
英文會先用Arial,中文會去找瀏覽器指定的sans-serif字體
如果sans-serif字體沒有中文字
就會去找系統內的fallback順序找到中文字體

不同的系統,想指定不同的字體,也可如法炮製
OSX有Helvetica也有Arial
Win有Arial
然後我們又知道Arial其實是Helvetica的山寨版
當然要優先使用Helvetica

font-family:Helvetica,Arila,sans-serif;

這樣英文字體就會先使用Helvetica
萬一系統沒有Helvetica,才使用Arial
如果你反過來寫...

font-family:Arial,Helvetica,sans-serif;

你也知道這樣兩套系統都有Arial
就全部都會使用Arial了阿
(當然是指使用者沒有自己刪除Arial又去安裝Helvetica的狀況)

同樣可以類推中文的狀況:
OSX有LiHeiPro(儷黑Pro,Mac上很受歡迎的預設中文字體)
若裝了office也有新細明體
Win有新細明體(似乎只有這個可以用)
誰來告訴我微軟正黑體的「碧」bug改了沒?
那這樣

font-family:'LiHeiPro','新細明體',sans-serif;

OSX上就會乖乖使用LiHeiPro
(而且不會去使用醜掉的10.6預設字體HeitiTC)
Win上就會使用新細明體
那中英文綜合的時候就是這樣

font-family:Helvetica,Arial,'LiHeiPro','新細明體',sans-serif;

如果你想要有微軟正黑體的時候,就取代新細明體,那就...

font-family:Helvetica,Arial,'LiHeiPro','微軟正黑體','新細明體',sans-serif;

以上就是CSSfont-family的遊戲方式

转载于:https://www.cnblogs.com/wanglinqiang/p/5849040.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值