跨系统跨浏览器的“微软雅黑”


这个问题起源于设计要求某页面在任何装了微软雅黑的系统里都要显示微软雅黑。这就包括,win下所有浏览器和mac下所有浏览器(我想没人会在linux下装雅黑的吧~)。

给font-family设定中文字体一般有两种常见方式:1、字体英文名,2、unicode。

我一直采用unicode的方法。
因为写成“Microsoft Yahei”的话,win下ff(曾经)和opera(目前为止)都不能正确识别。
写成unicode的话,win下所有浏览器都能显示雅黑字体。

但是这招在mac os下似乎行不通。
通过调试,基本确定mac下的雅黑的名字默认就是“Microsof Yahei”,不存在“微软雅黑”这个字体名。
所以mac os下写unicode是没法被识别成“微软雅黑”的。
但这样会造成win下部分浏览器没法正确显示雅黑。

终上,
如果想让win下全浏览器显示雅黑的话,font-family用unicode“\5FAE\8F6F\96C5\9ED1”;
如果想让全部装了雅黑的系统下的浏览器显示雅黑的话,font-family用英文名“Microsoft Yahei”,
但这意味着部分win下的浏览器无法正确显示雅黑。

,