欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

网页中嵌入特殊字体(此法利于SEO)

程序员文章站 2022-03-27 09:38:11
...

通过CSS3,Web设计师再也不必*使用“web-safe”字体了。

我们一般在网页上使用的是常用字体,通常网页上不能使用一些特殊字体,否则浏览者可能无法正确浏览到。即使我们可以通过图片、flash、SIFR等技术来实现网页使用特殊字体,但这些方式都有一个严重的缺点:不利于SEO(Search Engine Optimization,搜索引擎优化)。

CSS3 @font-face 规则

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

您“自己的”的字体是在 CSS3 @font-face 规则中定义的。

下面介绍一种非常有利于SEO的特殊字体应用方法:在CSS中通过@font-face属性来实现网页中嵌入特殊字体。

【第一步】获取字体文件

获取要使用字体的文件格式,确保能在主流浏览器中都能正常显示该字体。

浏览器支持:

Firefox、Chrome、Safari 以及 Opera 支持 .ttf (True Type Fonts) 和 .otf (OpenType Fonts) 类型的字体。

Internet Explorer 9+ 支持新的 @font-face 规则,但是仅支持 .eot 类型的字体 (Embedded OpenType)。

注释:Internet Explorer 8 以及更早的版本不支持新的 @font-face 规则。

最常见的是.ttf文件,我们需要通过这种文件格式转换为其余两种文件格式。可以通过网站http://www.fontsquirrel.com/fontface/generator 或onlinefontconverter提供的在线字体转换服务获取字体文件格式的转换。这里,笔者推荐第一个站点,它允许我们选择需要的字符生成字体文件(在服务的最后一个选项),这样就大大缩减了字体文件的大小,使得本方案更具实用性。


【第二步】使用您需要的字体

在新的 @font-face 规则中,您必须首先定义字体的名称(比如 myFont),然后指向该字体文件。
如需为 HTML 元素使用字体,请通过 font-family 属性来引用字体的名称 (myFont):

获取到三种格式的字体文件后,在样式表中声明该字体,并在需要的地方使用该字体。

字体声明如下:

<style> 
@font-face
{
font-family: myFont;  /*myFont为你定义的字体名称*/
src: url('Sansation_Light.ttf'),
     url('Sansation_Light.eot'); /* IE9+ */
}

div
{
font-family:myFont;
}
</style>

在页面中需要的地方使用该字体:

<body>

<div>
ALWAYS BELIEVE THAT SOMETHING WONDERFUL IS ABOUT TO HAPPEN
</div>

<p><b>注释:</b>永远相信美好的事情即将发生</p>

</body>

运行结果:

网页中嵌入特殊字体(此法利于SEO)

字体的名称,font - face规则:

  • font-family: myFirstFont;
字体文件包含在您的服务器上的某个地方,参考CSS:
  • src: url('Sansation_Light.ttf')
如果字体文件是在不同的位置,请使用完整的URL:
  • src: url('http://www.example.css/css3/Sansation_Light.ttf')

拓展:使用粗体字体

您必须为粗体文本添加另一个包含描述符的 @font-face:

比如:

@font-face
{
font-family: myFirstFont;
src: url('Sansation_Bold.ttf'),
     url('Sansation_Bold.eot'); /* IE9+ */
font-weight:bold;
}

文件 "Sansation_Bold.ttf" 是另一个字体文件,它包含了 Sansation 字体的粗体字符。

只要 font-family 为 "myFirstFont" 的文本需要显示为粗体,浏览器就会使用该字体。

通过这种方式,我们可以为相同的字体设置许多 @font-face 规则。


CSS3 字体描述符
描述符 描述
font-family name 必需。规定字体的名称。
src URL 必需。定义字体文件的 URL。
font-stretch normal
condensed
ultra-condensed
extra-condensed
semi-condensed
expanded
semi-expanded
extra-expanded
ultra-expanded
可选。定义如何拉伸字体。默认是 "normal"。
font-style ormal
italic
oblique
可选。定义字体的样式。默认是 "normal"。
font-weight font-weight
normal
bold
100
200
300
400
500
600
700
800
900
可选。定义字体的粗细。默认是 "normal"。
unicode-range unicode-range 可选。定义字体支持的 UNICODE 字符范围。默认是 "U+0-10FFFF"。
相关标签: 字体