当前位置: 首页 > 面试题库 >

我们为什么要在字体中包含ttf,eot,woff,svg ...

咸弘雅
2023-03-14
问题内容

CSS3 font-face,有包括如多发性字体类型ttfeotwoffsvgcff

我们为什么要使用所有这些类型?

如果它们专用于不同的浏览器,为什么它们的数量大于主要Web浏览器的数量?


问题答案:

在2019年回答:

仅使用WOFF2,或者如果需要传统支持,请使用WOFF。不要使用任何其他格式

svgeot是死的格式,ttfotf有完整的系统字体,并且不应该被用于Web的目的)

2012年的原始答案:

简而言之,font-face很老,但是直到最近,IE才支持它。

  • eot 早于IE9的Internet Explorer是必需的-他们发明了规范,但eot是专有解决方案。

  • ttf并且otf是正常的旧字体,因此有些人感到恼火,这意味着任何人都可以免费下载昂贵的许可字体。

  • 随着时间的流逝,SVG 1.1新增了一个“字体”一章,该章解释了如何仅使用SVG标记为字体建模,人们开始使用它。花费了更多时间,事实证明,与仅使用常规字体格式相比,它们 绝对可怕 ,并且SVG 2明智地再次删除了整个章节。

  • 然后,woff由具有相当丰富的领域知识的人发明,这使得可以以丢弃对系统安装至关重要但对网络无关的位(使人们担心盗版感到高兴)的方式托管字体,并且允许进行内部压缩以更好地满足Web的需求(使用户和主机满意)。这成为首选格式。

  • 2019 edit 几年后,woff2被起草并被接受,这改善了压缩效果,导致文件甚至更小,并且能够“部分地”加载单个字体,从而可以将支持20个脚本的字体存储为“块”而是在磁盘上显示,浏览器可以根据需要自动加载字体“部分”,而无需预先传输整个字体,从而进一步改善了排版体验。

如果您不想支持IE 8或更低版本,iOS 4或更低版本以及android
4.3或更早版本,则可以使用WOFF(对于支持该功能的最新浏览器,可以使用WOFF2(压缩程度更高的WOFF)。)

@font-face {
  font-family: 'MyWebFont';
  src:  url('myfont.woff2') format('woff2'),
        url('myfont.woff') format('woff');
}


 类似资料:
  • 问题内容: 到目前为止,我一直使用Paul Irish的[防弹字体外观语法 但是我只是在看caniuse对.woff和.woff2文件的支持,它说IE9+支持woff。关于该主题的大多数文章都来自2009年左右,而在撰写本文时已经整整7年了。当woff现在得到如此广泛的支持时,我们真的需要继续声明ttf,otf,eot和svg吗? 问题答案: 2018年10月 tl; dr:使用WOFF2,每个现

  • 问题内容: 我的代码有问题。因为我要为页面包括全局字体,所以我下载了.ttf文件。我将其包含在我的主要CSS中,但是我的字体不会改变。 这是我的简单代码: 我不知道我哪里出了错。你能帮我吗?谢谢。 问题答案: 仅为webfont提供.ttf文件不足以支持跨浏览器。目前最好的组合是使用以下组合: 此代码假定您的webfont具有.eot,.woff,.ttf和svg格式。要使所有这些过程自动化,您可

  • 为什么我们需要字典? 计算机最适合使用数字,而人类最适合使用姓名。我们创建了DNS以便记住主机名而不是IP地址。字典以相同的方式使用,因此我们可以记住AVP名称而不是类型编号。当FreeRADIUS解析请求或生成响应时,会查阅字典。 但是,字典与DNS不同,因为RADIUS客户端不知道FreeRADIUS使用的这些“友好”名称。永远不会在RADIUS客户端和RADIUS服务器之间交换AVP名称。

  • 问题内容: 我将稍微解释一下我的脚本,以便您可以理解我的问题。 基本上我做了一个脚本来检查SOCKS5是还是。 当我在上面测试我的脚本时,它运行良好,但是当我在Windows上对其进行测试时,直到我将以下行添加到: 谁能向我解释为什么我在Windows中需要此行,而在Linux服务器上却不需要? 问题答案: SSL证书上的此cURL手册页介绍了连接到SSL / TLS受保护主机时 证书验证 的过程

  • 问题内容: 我一直在研究,发现从2.1开始就可以使用实体图。 但是我还不了解实体图的优点。 我知道使用实体图的优点之一是我们只能在整个实体中指定要获取的数据,但是如果我们要整个实体,还有其他理由使用实体图吗?还是仅在要检索部分数据时才应使用实体图? 当我们使用实体图时,它还有其他目的或优点,我想知道。 问题答案: 在Jpa中,休眠与关联关系一直是性能的问题。 一次又一次地在事务中延迟加载关联会导致

  • 我见过类似的问题,但他们仍然没有意义,我的猿类大脑。 这里有一个例子。如果我在名为的头文件中声明了一个函数:并且在文件中声明了一个函数:。我在另一个文件(例如)中看到过这样的人,它只包含头,它只有声明(里面没有代码),而不包含带有代码的。但令我震惊的是,当他们调用中的函数时,它使用了中的代码并打印“hello”。怎么做?当我只包含了文件时,它如何打印在文件中添加的“hello”,而它只是一个声明,