css3@font-face

张宇航      2022-02-08     680

关键词:

很长时间,web设计师总是得用一些“web-safe”字体,英文用body{font-family:"corbel", Arial, Sans-serif;  }中文用body{font-family:"微软雅黑" }现在@font-face能够加载服务器端的字体文件,让浏览器端可以显示用户电脑里没有安装的字体。

原理是:字体文件放到web服务器,在需要的时候被自动下载到用户的计算机上。

一、@font-face介绍

语法:

@font-face {
      font-family: <YourWebFontName>;
      src: <source> [<format>][,<source> [<format>]]*;
      [font-weight: <weight>];
      [font-style: <style>];
    }

参数说明:

YourWebFontName:此值为你自己定义的字体名称,最好是使用你下载的默认字体名称,它将被引用到你的web元素的font-family属性中。

source:自定义字体的存放路径,可以是相对路径或绝对路径。

format:指自定义字体的格式,主要用来帮助浏览器识别,其值有以下几种类型:truetype,opentype,truetype-aat,embedded-opentype,avg等。

font-weight和和font-style就是定义字体是否为粗体,和字体样式。

浏览器兼容写法:

复制代码
 @font-face {        
                        font-family: 'YourWebFontName';        
                        src: url('YourWebFontName.eot'); /* IE9 Compat Modes */        
                        src: url('YourWebFontName.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */             
                               url('YourWebFontName.woff') format('woff'), /* Modern Browsers */             
                               url('YourWebFontName.ttf')  format('truetype'), /* Safari, Android, iOS */             
                               url('YourWebFontName.svg#YourWebFontName') format('svg'); /* Legacy iOS */   
                      }
复制代码

二、使用方法

1、下载特殊字体

比如我要下载single-malta.font这个字体,下载字体链接为

http://www.dafont.com/single-malta.font

下载解压后可以看到一个ttf文件。

2、用第三方工具生成@font-face所需字体格式,即.eot,.woff,.ttf,.svg字体格式:

第三方工具链接:http://www.fontsquirrel.com/fontface/generator

具体步骤是在WEBFONT GENERATOR页面上传第一步下载的字体,然后下载解压。

下载解压后发现文件夹有很多多余的demo页面和css,我们只需要.woff,.ttf,.svg,.eof四个文件。把这四个文件复制到站点的fonts目录。现在准备工作已经完成了。

3、在style.css中添加@font-face相关代码。

4、现在就可以在样式中用font-familyl。

代码如下:

复制代码
<style type="text/css">
@font-face {
    font-family: 'SingleMaltaRegular';
    src: url(fonts/singlemalta-webfont.eot);
    src: url(fonts/singlemalta-webfont.svg#SingleMaltaRegular)format('svg'),
         url(fonts/singlemalta-webfont.ttf)format('truetype'), 
          url(fonts/singlemalta-webfont.woff)format('woff'), 
          url(fonts/singlemalta-webfont.eot?#iefix)format('embedded-opentype');
    font-weight: normal;
    font-style: normal;
}
h2.singleMalta {
    font-family: 'SingleMaltaRegular'
}
</style>

<body>
<h2>普通字体</h2>
<h2 class="singleMalta">single malta</h2>
</body>
复制代码

效果:

三、资源链接

网页中导入特殊字体@font-face属性详解

http://www.w3cfuns.com/thread-5597432-1-1.html

获取字体

第三方生成字体工具

http://www.fontsquirrel.com/fontface/generator

 


 

css3@font-face属性

属性定义及使用说明@font-face规则,网页设计师再也不必使用的"web-safe"的字体之一。字体的名称,font-face规则:font-family:myFirstFont;字体文件包含在您的服务器上的某个地方,参考CSS:src:url(‘Sansation_Light.ttf‘)如果字体文件是在不... 查看详情

css3@font-face

...l",Arial,Sans-serif; }中文用body{font-family:"微软雅黑"}现在@font-face能够加载服务器端的字体文件,让浏览器端可以显示用户电脑里没有安装的字体。原理是:字体文件放到web服务器,在需要的时候被自动下载到用户的计算机上。一... 查看详情

Firefox 中的 CSS3 @font-face 根据 URL 前缀更改

】Firefox中的CSS3@font-face根据URL前缀更改【英文标题】:CSS3@font-faceinFirefoxchangesaccordingtoURLprefix【发布时间】:2012-10-3003:59:01【问题描述】:在使用Firefox(v16)时,我注意到根据URL前缀,是否会加载CSS字体...前缀是指三个字母“www”... 查看详情

在 Windows 上使用 ClearType 使 CSS3 @font-face 字体渲染效果很好

】在Windows上使用ClearType使CSS3@font-face字体渲染效果很好【英文标题】:MakingCSS3@font-facefontrenderingplaynicewithClearTypeonWindows【发布时间】:2011-07-0211:11:29【问题描述】:首先是一些背景信息。似乎使用CSS3@font-face规则可以在任何浏览... 查看详情

css3字体

CSS3@font-face规则使用CSS3,网页设计师可以使用他/她喜欢的任何字体。只需简单的将字体文件包含在网站中,它会自动下载给需要的用户。在新的@font-face规则中,您必须首先定义字体的名称(比如myFirstFont),然后指向该字体文... 查看详情

css3字体2d转换3d转换

学习篇之CSS3字体、2D转换、3D转换一、字体@font-face将字体文件存放到web服务器上,通过CSS3@font-face规则中定义,它会在需要时被自动下载到用户的计算机上。@font-face{  font-family:myFonts;//定义字体名称  src:url(myFonts.ttf),url(myFont... 查看详情

css3font-face使用

...动下载到用户的计算机上。您“自己的”的字体是在CSS3@font-face规则中定义的。@font-face的语法规则:@font-face{font-family:<YourWebFon 查看详情

css3字体

CSS3@font-face规则在CSS3之前,web设计师必须使用已在用户计算机上安装好的字体。通过CSS3,web设计师可以使用他们喜欢的任意字体。当您您找到或购买到希望使用的字体时,可将该字体文件存放到web服务器上,它会在需要时被自... 查看详情

css的一个技巧坑

CSS3@font-face规则使用以前CSS的版本,网页设计师不得不使用用户计算机上已经安装的字体。使用 CSS3,网页设计师可以使用他/她喜欢的任何字体。当你发现您要使用的字体文件时,只需简单的将字体文件包含在网站中,它会... 查看详情

css3入门

CSS3边框border-radiusbox-shadowborder-imageCSS3背景background-sizebackground-originbackground-clip CSS3文本效果text-shadow word-wrap text-overflow CSS3字体  CSS3@font-face CSS32D转换trans 查看详情