当我没有这种字体时使用什么字体

时间:2014-08-21 08:03:10

标签: html css fonts

当我没有这种字体时使用什么字体?

示例:

<html>
  <head>
    <link href='https://fonts.googleapis.com/css?family=PT+Sans+Narrow: 400' rel='stylesheet' type='text/css'>
    <style>
      body {
        font: 400 30px/1.4 Arial;
      }

      p {
        font: 700 30px/1.4 "Pt Sans Narrow", Arial;
      }
    </style>
  </head>
  <body>
    <p>Example.</p>
  </body>
</html>

在这个例子中,我没有“Pt Sans Narrow 700”。使用什么字体?

6 个答案:

答案 0 :(得分:1)

您正在使用谷歌字体,这意味着它显然采用这种字体。但是,如果您还没有使用谷歌字体,那么如果客户端没有这样的字体,那么它将采用另一种字体Arial。

考虑这个例子:

font-family: font1,font2,font3;

如果客户端浏览器没有这样的字体font1,那么它将尝试使用font2,如果font2仍然不可用,那么它将使用font3但如果font3仍然不存在客户端的默认字体。

答案 1 :(得分:1)

使用PT Sans Narrow系列的常规字体,其算法(合成,假)粗体应用于其字形。在这种情况下,结果显然比普通的PT Sans Narrow更大胆但不那么大胆的PT Sans Narrow Bold。

CSS字体模块3级在font-weight的描述中说:“尽管这种做法并不受印刷师的喜爱,但大胆的面孔通常由用户代理合成,用于缺乏实际大胆面孔的面孔。出于样式匹配的目的,必须将这些面视为在族中存在。作者可以使用'font-synthesis'属性明确地避免这种行为。“(font-synthesis属性尚不支持。)

除非有一些非常特殊的理由要求“虚假加粗”,尽管存在实际的粗体字体,您应该在您引用Google字体的元素中指定粗体(700)权重,如下所示Google documentation

<link href='https://fonts.googleapis.com/css?family=PT+Sans+Narrow:400,700'
   rel='stylesheet' type='text/css'>

答案 2 :(得分:0)

如果不存在Pt Sans Narrow,则使用Arial。

答案 3 :(得分:0)

当您打开HTML文件并且浏览器无法找到该字体时,通常会使用浏览器的默认字体。

答案 4 :(得分:0)

将会看到您所声明的字体堆栈:

&#34; Pt Sans Narrow&#34;,Arial;

并查看列表中的下一个字体,因为它无法找到&#34; Pt Sans Narrow&#34;。

在这种情况下,它将是Arial。

答案 5 :(得分:0)

这在很大程度上取决于您正在使用的渲染引擎。

大多数引擎使得“Pt Sans Narrow”可用的字体只是粗体,而这看起来不像正确的“Pt Sans Narrow”700,但可能会接近。

然后有那些引擎跳过一个不可用的字体并选择下一个,如果它可用则可能是Arial,如果设备也没有Arial,则可能是设备默认字体。