【发布时间】:2011-12-19 04:33:05
【问题描述】:
我没有使用 flash 或 php - 我被要求在简单的 HTML 布局中添加自定义字体。 《KG 六月虫》
我已将其下载到本地 - 是否有简单的 CSS 技巧来完成此操作?
【问题讨论】:
我没有使用 flash 或 php - 我被要求在简单的 HTML 布局中添加自定义字体。 《KG 六月虫》
我已将其下载到本地 - 是否有简单的 CSS 技巧来完成此操作?
【问题讨论】:
是的,您可以使用名为 @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 网站下载了字体:
【讨论】:
url 中指定的@Black 路径相对于您的 css 文件所在的位置。
您可以在大多数现代浏览器中使用@font-face。
这里有一些关于它如何工作的文章:
这是将字体添加到应用程序的好语法:
这里有几个地方可以转换字体以供@font-face 使用:
如果您不想使用 font-face,cufon 也可以使用,并且它在网站上有很好的文档:
【讨论】:
为了获得最佳的浏览器支持,您的 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;
}
有关详细信息,请参阅Using @font-faceCSS-tricks.com 上的文章。
【讨论】:
试试这个
@font-face {
src: url(fonts/Market_vilis.ttf) format("truetype");
}
div.FontMarket {
font-family: Market Deco;
}
<div class="FontMarket">KhonKaen Market</div>
vilis.org
【讨论】:
有一个简单的方法可以做到这一点: 在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”字体系列不包含特殊字符,如“-,_”......等它只能包含空格。
【讨论】:
font-face,而不是需要一个 ttf 文件。
如果您使用的是外部样式表,代码可能如下所示:
@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 页面的
部分。在此示例中,字体文件应与样式表一起位于 css 文件夹中。在此之后,只需在 html 中的任何标记内添加 class="junebug" 即可在该元素中使用 Junebug 字体。如果您将 css 放在实际网页中,请在 html 的头部添加样式标记,例如:
<style>
@font-face { font-family: Junebug; src: url('Junebug.ttf'); }
</style>
并且实际的元素样式可以包含在上面的<style> 中并通过类或id 调用每个元素,或者您可以只声明与元素内联的样式。我所说的元素是指
、
<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>
使用内联样式不好的原因是最佳实践要求样式应全部保存在一个位置,以便进行实用的编辑。这也是我推荐使用外部样式表的第一个选项的主要原因。我希望这会有所帮助。
【讨论】:
你只需要将 JUNEBUG.TFF 放在与 html 文件相同的位置。
我从Yofonts 网站下载了字体:
【讨论】: