175

我没有使用 flash 或 php - 我被要求将自定义字体添加到简单的 HTML 布局中。“KG 六月虫”

我在本地下载了它 - 是否有一个简单的 CSS 技巧来完成这个?

4

7 回答 7

313

是的,您可以使用名为 @font-face 的 CSS 功能。它只在 CSS3 中得到官方认可,但在 CSS2 中被提出并实现,并且在 IE 中得到了相当长的支持。

你在 CSS 中声明它是这样的:

 @font-face { font-family: Delicious; src: url('Delicious-Roman.otf'); } 
 @font-face { font-family: Delicious; font-weight: bold; src: url('Delicious-Bold.otf');}

然后,您可以像其他标准字体一样引用它:

 h3 { font-family: Delicious, sans-serif; }

所以,在这种情况下,

<html>
   <head>
    <style>
      @font-face { font-family: JuneBug; src: url('JUNEBUG.TTF'); } 
      h1 {
         font-family: JuneBug
      }
    </style>
   </head>
   <body>
      <h1>Hey, June</h1>
   </body>
</html>

您只需要将 JUNEBUG.TFF 放在与 html 文件相同的位置。

我从dafont.com网站下载了字体:

http://www.dafont.com/junebug.font

于 2011-11-01T02:03:02.140 回答
19

您可以在大多数现代浏览器中使用 @font-face。

这里有一些关于它是如何工作的文章:

这是将字体添加到应用程序的良好语法:

这里有几个地方可以转换字体以供@font-face 使用:

如果您不想使用 font-face,cufon 也可以使用,并且它在网站上有很好的文档:

于 2011-11-01T02:07:20.933 回答
17

为了获得最佳的浏览器支持,您的 CSS 代码应如下所示:

@font-face {
  font-family: 'MyWebFont';
  src: url('webfont.eot'); /* IE9 Compat Modes */
  src: url('webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('webfont.woff2') format('woff2'), /* Super Modern Browsers */
       url('webfont.woff') format('woff'), /* Pretty Modern Browsers */
       url('webfont.ttf')  format('truetype'), /* Safari, Android, iOS */
       url('webfont.svg#svgFontName') format('svg'); /* Legacy iOS */
}

body {
  font-family: 'MyWebFont', Fallback, sans-serif;
}

有关详细信息,请参阅CSS-tricks.com上的文章使用 @font-face

于 2016-01-24T19:15:18.727 回答
11

尝试这个

@font-face {  
    src: url(fonts/Market_vilis.ttf) format("truetype");
}
div.FontMarket { 
    font-family:  Market Deco;
}
 <div class="FontMarket">KhonKaen Market</div>

vilis.org

于 2016-09-18T07:59:54.450 回答
6

如果您使用的是外部样式表,则代码可能如下所示:

@font-face { font-family: Junebug; src: url('Junebug.ttf'); } 
.junebug { font-family: Junebug; font-size: 4.2em; }

并且应该保存在一个单独的.css 文件中(例如styles.css)。如果您的 .css 文件位于与页面代码不同的位置,则实际字体文件应该与 .css 文件具有相同的路径,而不是 .html 或 .php 网页文件。然后网页需要类似:

<link rel="stylesheet" href="css/styles.css">

在您的 html 页面的 <head> 部分中。在此示例中,字体文件应与样式表一起位于 css 文件夹中。在此之后,只需在 html 中的任何标记内添加 class="junebug" 即可在该元素中使用 Junebug 字体。

如果您将 css 放在实际网页中,请在 html 的头部添加样式标记,例如:

<style>
    @font-face { font-family: Junebug; src: url('Junebug.ttf'); } 
</style>

实际的元素样式可以包含在上面<style>并按类或 id 为每个元素调用,或者您可以只声明与元素内联的样式。我所说的元素是指 <div>、<p>、<h1> 或 html 中需要使用 Junebug 字体的任何其他元素。使用这两个选项,字体文件 (Junebug.ttf) 应该位于与 html 页面相同的路径中。在这两个选项中,最佳实践如下所示:

<style>
    @font-face { font-family: Junebug; src: url('Junebug.ttf'); } 
    .junebug { font-family: Junebug; font-size: 4.2em; }
</style>

<h1 class="junebug">This is Junebug</h1>

最不可接受的方式是:

<style>
    @font-face { font-family: Junebug; src: url('Junebug.ttf'); } 
</style>

<h1 style="font-family: Junebug;">This is Junebug</h1>

使用内联样式不好的原因是最佳实践规定样式应该全部保存在一个地方,因此编辑很实用。这也是我推荐使用外部样式表的第一个选项的主要原因。我希望这有帮助。

于 2017-12-27T23:56:30.007 回答
0

你只需要将 JUNEBUG.TFF 放在与 html 文件相同的位置。

我从Yofonts网站下载了字体:

于 2022-01-10T09:39:10.100 回答
-1

有一个简单的方法可以做到这一点:在 html 文件中添加:

<link rel="stylesheet" href="fonts/vermin_vibes.ttf" />

注意:您输入您拥有的 .ttf 文件的名称。然后转到您的css文件并添加:

h1 {
    color: blue;
    font-family: vermin vibes;
}

注意:您输入您拥有的字体的字体系列名称。

注意:不要将字体系列名称写为您的 font.ttf 名称示例:如果您的 font.ttf 名称是:“vermin_vibes.ttf”,您的字体系列将是:“vermin vibes”字体系列不包含特殊字符作为“-,_”...等它只能包含空格。

于 2017-10-10T08:25:02.227 回答