--- title: '@font-face' slug: Web/CSS/@font-face tags: - '@规则' - 字体 translation_of: Web/CSS/@font-face ---
@font-face { font-family: "Open Sans"; src: url("/fonts/OpenSans-Regular-webfont.woff2") format("woff2"), url("/fonts/OpenSans-Regular-webfont.woff") format("woff"); }
这是一个叫做@font-face
的CSS @规则 ,它允许网页开发者为其网页指定在线字体。 通过这种作者自备字体的方式,@font-face
可以消除对用户电脑字体的依赖。 @font-face
不仅可以放在在CSS的最顶层, 也可以放在 @规则 的 条件规则组 中。
下面的例子简单定义了一个可下载的字体,并应用到了文档的整个body标签上。
<html> <head> <title>Web Font Sample</title> <style type="text/css" media="screen, print"> @font-face { font-family: "Bitstream Vera Serif Bold"; src: url("https://developer.mozilla.org/@api/deki/files/2934/=VeraSeBd.ttf"); } body { font-family: "Bitstream Vera Serif Bold", serif } </style> </head> <body> This is Bitstream Vera Serif Bold. </body> </html>
在接下来的例子中,用到了用户本地字体"Helvetica Neue Bold"的备份;如果当前用户(浏览器)未安装该字体(两种可能的字体名都已经试过),就会用下载的字体"MgOpenModernaBold.ttf"来代替:
@font-face { font-family: MyHelvetica; src: local("Helvetica Neue Bold"), local("HelveticaNeue-Bold"), url(MgOpenModernaBold.ttf); font-weight: bold; }
接下来的例子在英文原文中已被删除。
这个例子新定义了一个字体,正常粗细的字采用字体Times New Roman,粗体字采用Consolas。
@font-face { font-family: myFirstFont; src: local("Times New Roman"); font-weight:normal; } @font-face { font-family: myFirstFont; src: local(Consolas); font-weight:bold; }
.className { @font-face { font-family: MyHelvetica; src: local("Helvetica Neue Bold"), local("HelveticaNeue-Bold"), url(MgOpenModernaBold.ttf); font-weight: bold; } }
Specification | Status | Comment |
---|---|---|
{{SpecName('WOFF2.0', '', 'WOFF2 font format')}} | {{Spec2('WOFF2.0')}} | Font format specification with new compression algorithm |
{{SpecName('WOFF1.0', '', 'WOFF font format')}} | {{Spec2('WOFF1.0')}} | Font format specification |
{{SpecName('CSS3 Fonts', '#font-face-rule', '@font-face')}} | {{Spec2('CSS3 Fonts')}} | Initial definition |
{{Compat("css.at-rules.font-face")}}