为什么 Google Fonts 在其字体中添加 "rel=stylesheet"?

Why does Google Fonts add "rel=stylesheet" to its fonts?

我正在考虑将 rel=preload 添加到我的 <link> 标签以预加载我网站的主要字体,当我注意到它已经包含 rel="stylesheet":

<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@1,300&display=swap" rel="stylesheet">

据我了解,rel 属性用于标识样式表,那么为什么 Google 将其用于字体?它有什么优势?

如果您访问由 Google 字体提供的 link,您会注意到它实际上是一个样式表。当您从 CDN 导入字体时,它通常是一个充满 @font-face 规则的样式表,这些规则从多个源文件 URL(通常是 WOFF、WOFF2、TTF 或 OTF 格式)定义新字体。当您使用 @import 从外部来源添加字体时会发生同样的事情 - 它导入的是样式表,而不仅仅是字体源文件。

属性 rel 用于标识对象与您要添加的 link 之间的关系。但是 stylesheet 是指定 link 样式性质的值。字体是您尝试在原始对象中更改的样式特征。