【问题标题】:CSS font embedding [closed]CSS字体嵌入[关闭]
【发布时间】:2026-01-15 13:55:02
【问题描述】:

我只是对嵌入标准字体的字体感到好奇。我的意思是我真的需要嵌入外部 (TTF) 字体文件以使其在所有浏览器上都能正常工作吗?

例如,我想使用Times New Roman 非常有名且非常常见的字体,我是否也使用@font-face 并嵌入Times New Roman 的TTF 文件以使其适用于所有浏览器?

提前感谢您提供的信息。

【问题讨论】:

  • 如果计算机上存在某种字体,那么它将被使用,如果不存在,它将在您的字体系列声明中查找其他字体作为后备。您可以使用@font-face 来确保每台计算机都拥有该字体的副本。 Have a read of this。 Ps 嵌入 ttf 仅不适用于所有浏览器,您还需要 .woff、.eot 和 .svg 版本的字体

标签: css fonts font-face font-family


【解决方案1】:

没有标准字体。没有一种字体可以在所有设备中使用;例如,许多移动设备只有几种字体,而这些字体通常在桌面设备中不可用。

此外,即使名称为 Times New Roman 的字体存在于不同的设备中,它也不必相同。它们可能来自不同的制造商,也可能是不同的版本(主要是为了使新版本具有更大的字符库,但也可能存在其他差异)。

因此,在所有设备中使用特定字体的唯一方法,在可能的范围内,就是嵌入它。是否将本地字体指定为主要选项是一个不同的问题,并不总是可行的。例如,Windows PC 中常用的大多数字体都不是免费字体;可能无法合法地嵌入它们,或者嵌入它们可能需要许可,但需要付费。

【讨论】:

    【解决方案2】:

    不,对于大多数标准字体,您不需要包含外部 ttf。 您可以在此处查看用于字体系列的一些典型组合:http://www.w3schools.com/cssref/css_websafe_fonts.asp

    对于无法加载其他字体的情况,始终建议使用整个字体系列作为备用。另请注意,使用多个单词的字体名称必须用引号引起来

    【讨论】: