《HTML5+CSS3网页设计入门必读》——6.4 使用Web字体

6.4 使用Web字体

在上一节中,看到我们十分确信所用的字体系列驻留在每个人的计算机上。也就是说,可以保证大多数计算机都会呈现Arial或Times New Roman,或者具有用于serif和sans-serif的所必需的默认字体,如果这是样式表所需要的话。但是,利用CSS3中包括的@font-face特性,甚至可以对在线放置的内容发挥更大的设计能力。

简而言之,@font-face特性允许在HTML5标记中定义要使用的字体,使得无论用户是否在他们的计算机上安装了那些字体(并且很有可能用户没有在他们自己的计算机上安装你所选的奇特字体),都会显示出它们。字体的定义可以是本地的(对于你的Web服务器而言,如果你在意在那里包括字体文件的话),或者是远程的(可以链接到许多字体存储的位置)。

在样式表中,要定义在整个页面中使用的新字体,可以简单地使用下面的结构:

@font-face {
   font-family: 'some_name_goes_here';
   src: url('some_location_of_the_font_file');
}

在定义它之后,可以在样式表中的其他任何位置引用font-family,如下所示:

h1 {
   font-family:some_name_goes_here;
   font-size:28px;
   text-align:center;
}

但是,你可能会问,从哪里获得字体呢?可以从许多位置获得字体—有一些字体是免费的,其他字体则不然。一个广泛流行的位置是Google Web Fonts,这不仅是因为这里的字体是免费的,而且因为Google被广泛认可为提供了一个稳定的平台,如果你的Web排版样式依赖于驻留在别人的Web服务器上的字体,这就很重要。其他一些用于获得字体的可靠的付费站点是TypeKit和Fontspring。付费站点不一定很糟糕,艺术家们也必须挣钱。我在TypeKit上进行了个人订购,并且对它们的服务非常满意,但是我也把Google Web Fonts用于许多项目。

让我们试着修改程序清单6.3中的代码,包括进一种Google Web Font字体,用于h1元素。如果转到 http://www.google.com/fonts ,并选择一种你喜欢的字体,Google提供了要在HTML和CSS中包括的代码。我选择了一种名为Cherry Swash的字体,Google建议我在自己的HTML模板中的< head >区域中包括以下代码:

<link href='http://fonts.googleapis.com/css?family=Cherry+Swash:400,700'
   rel='stylesheet' type='text/css' />

注意:

如果查看前面的链接位置,可以看到Google的@font-face定义已经为我们完成了。确切地讲,其定义如下:

@font-face {
 font-family: 'Cherry Swash';
 font-style: normal;
 font-weight: 400;
 src: local('CherrySwash'), local('CherrySwashRegular'), url(http://themes.
 googleusercontent.com/static/fonts/cherryswash/v1/HqOk7J1TZ5i3LejF0vnhCUOGz
 7vYGh680lGh-uXM.woff) format('woff');
}
@font-face {
 font-family: 'Cherry Swash';
 font-style: normal;
 font-weight: 700;
 src: local('Cherry SwashBold'), local('CherrySwashBold'), url(http://themes.
 googleusercontent.com/static/fonts/cherryswash/v1/CfyMyQqfucZPQNB0nvYyHl4twX
 kwp3_u9ZoePkT564.woff)
format('woff');
}

既然我的代码知道在哪里寻找字体,我们就只需引用它即可:

h1 {
  font-family:'Cherry Swash';
  font-size:28px;
  text-align:center;
}

图6.4显示了使用Web字体的新简历。

时间: 2024-12-05 18:24:51

《HTML5+CSS3网页设计入门必读》——6.4 使用Web字体的相关文章

《HTML5+CSS3网页设计入门必读》——6.3 调整字体

6.3 调整字体 有时,你可能想对文本的大小和外观进行更多一点控制,而不仅仅是将其设置为粗体或斜体.在我深入讨论使用CSS调整字体的合适方式之前,让我们简要探讨在CSS出现之前是怎样操作的:当你查看其他Web站点的源代码时,仍有可能发现这种方法的一些示例.记住,仅仅由于这些老方法仍在使用并不意味着你应该如法炮制. 在样式表投入使用之前,现在被逐步淘汰的标签用于控制Web页面文本中的字体. 注意: 我不能充分强调标签将不会被使用!这里仅仅出于演示和历史目的而使用它. 例如,曾经使用下面的HTML代

《HTML5+CSS3网页设计入门必读》——导读

前言 当我和Mandy Brown.Jason Santa Maria成立A Book Apart时,我们十分希望对一个主题内容进行整理并成书出版,而且我们觉得,只有一个作者适合这项工作. 网页设计是基于标准的.虽然"real fonts"或CSS3也对网页设计产生了深远的影响,但HTML的影响是其他方面所无法比拟的.HTML是开发人员对W3C步调和政策不满的结果,它是为网页应用程序(而不仅仅是文件)而设计的,因此,虽然这个新版本的网络语言令网页设计界为之兴奋,但也导致了同等程度的愤怒

《HTML5+CSS3网页设计入门必读》——2.3 错误处理

2.3 错误处理 HTML5不仅声明了浏览器应该如何处理规范格式的标记,还首次规范了浏览器该如何处理格式不规范的文件. 浏览器厂商曾不得不独自研究如何处理错误.无论最流行的浏览器做出怎样的尝试,该过程通常都会涉及逆向工程,这会耗费浏览器厂商的时间.与其浪费时间模仿竞争对手处理有缺陷的标记,倒不如尝试实现新功能. 在HTML5中定义错误处理恐怕难以实现.虽然HTML5具有与HTML 4.01完全相同的元素和属性,并且完全没有添加新特性,但在2012年年底之前完成错误处理的定义仍然是徒劳的. 网页设

《HTML5+CSS3网页设计入门必读》——第2章 HTML5的设计2.1 设计原则

第2章 HTML5的设计 法国大革命是极端的政治和社会变革时期.这种革命热情也被倾注于对计时系统的改革中.在一段时期内,法兰西共和国引入了十进制计时制,即1天分为10小时,且1小时分为100分钟.该计时制的逻辑性和清晰性明显优于六十进制的计时制. 但十进制的计时制失败了.没有人使用这种计时制度.而XHTML 2的命运与之相似. W3C再次证明了法国大革命的教训:改变现有的行为习惯是非常非常困难的. 2.1 设计原则 为了避免过去所犯的错误,WHATWG起草了一系列设计原则以指导HTML5的开发.

《HTML5+CSS3网页设计入门必读》——1.2 创建Web内容

1.2 创建Web内容 你可能注意到本书中使用的术语是"Web内容"(web content),而不是"Web页面"(web page),我们是有意这样做的.尽管我们谈论的是"访问Web页面",但是我们实际的意思是"查看我们计算机上的一个地址上的所有文本和图像".我们阅读的文本和查看的图像都是通过Web浏览器呈现的,在单独的文件中可以找到关于它们的某些指导. 这些文件可以包含被HTML代码标记(mark up)或包围的文本,告

《HTML5+CSS3网页设计入门必读》——2.6 语法:以自己的方式进行标记

2.6 语法:以自己的方式进行标记 一些编程语言,如Python,以其特殊的方式编写说明.使用空格来缩进代码是强制性的,空格很重要.而其他编程语言,如JavaScript,却不在格式方面作任何要求,每一行开头是否空格并不那么重要. 如果与一些程序员同处一室并说出"重要的空格"之类的话,那么就会导致一整晚不断升温的激烈辩论. 关于空格重要性的辩论核心存在一个基本的哲学问题:汇编语言应该保持特定的汇编风格,还是编写者可以按自己喜欢的风格编写? 标记并不需要空格.如果想要在每次嵌套元素时都添

《HTML5+CSS3网页设计入门必读》——2.2 切合现实

2.2 切合现实 持续的内部张力推动了HTML5的创立.一方面,规范需要足够强大,从而有能力支持创建网页应用程序,另一方面,虽然大多数现有内容都处于完全混乱的状态,但是HTML5仍需要支持已有的内容.如果 HTML5的规范在某一个方向上偏离得太远,那么它将重蹈XHTML 2的覆辙.但是,如果它在另一个相反的方向上偏离得太远,那么它就会认为标签和表单是万能的,因为这两者是大量网页建立的基础. 这是一种微妙的平衡,保持这种平衡需要务实且冷静的方法.

《HTML5+CSS3网页设计入门必读》——1.6 再次联手

1.6 再次联手 在WHATWG开发HTML5期间,W3C继续制定了XHTML 2规范.如果说XHTML2规范的制定速度很快,那是不准确的.实际上,这个过程是十分缓慢的. 2006年10月,蒂姆先生发表了一篇博文,承认将Web从HTML迁移到XML是行不通的.几个月后,W3C签发了新委任状,成立了一个HTML工作组.这个工作组并没有采取一切从头开始的方式,而是明智地决定:应该在WHATWG工作成果的基础上开发未来版本的HTML. 这样,时断时续的做法反而使情况变得令人困惑.W3C同时有两个工作组

《HTML5+CSS3网页设计入门必读》——2.7 我们不使用这种语言

2.7 我们不使用这种语言 对于旧版本的HTML,从规范中移除先前存在的元素或属性的过程被称为废弃.网页设计师不应该使用.回顾甚至提及已废弃的元素. HTML5中不含有被废弃的元素或属性,但却有大量过时的元素和属性. "过时"与"废弃"在含义上有着微妙的区别. 由于HTML5的目的是向后兼容已有内容,因此其规范必须承认先前存在的元素,即使这些元素已不包含在HTML5中.这将使情况变得略显混乱,因为其规范还声称"编写人员请不要使用该元素"以及&qu