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

6.3 调整字体

有时,你可能想对文本的大小和外观进行更多一点控制,而不仅仅是将其设置为粗体或斜体。在我深入讨论使用CSS调整字体的合适方式之前,让我们简要探讨在CSS出现之前是怎样操作的:当你查看其他Web站点的源代码时,仍有可能发现这种方法的一些示例。记住,仅仅由于这些老方法仍在使用并不意味着你应该如法炮制。

在样式表投入使用之前,现在被逐步淘汰的标签用于控制Web页面文本中的字体。

注意:

我不能充分强调标签将不会被使用!这里仅仅出于演示和历史目的而使用它。
例如,曾经使用下面的HTML代码更改页面上的一些文本的大小和颜色:

<font size="5" color="purple">This text will be big and purple.</font>

可以看到,< font >标签的size和color属性使得可以不用太费力地改变文本的字体。尽管这种方法工作得很好,但是由于CSS样式规则,它已经被一种更高级的字体格式化方法所取代。下面给出了几种用于控制字体的主要的样式规则。

  • font-family:设置字体系列(字形)。
  • font-size:设置字体的大小。
  • color:设置字体的颜色。

font-family样式规则允许设置用于显示文本的字形。你可以(并且通常应该)为这个样式指定多个值(用逗号隔开),使得如果用户系统上的第一种字体不可用,那么浏览器将可以尝试一种替代字体。

注意:

在第7章中将学习关于控制页面上的文本颜色的更多知识。该章还将说明如何创建你自己的自定义颜色,以及控制文本链接的颜色。
提供替代字体系列很重要,因为每个用户都可能会安装不同的字体集,至少会超越常用的基本核心字体集(如Arial、Times New Roman等)。通过提供替代字体列表,当无法找到理想的字体时,就有更好的机会使页面优雅地转而依靠一种已知的字体。下面给出了一个font-family样式的示例,它用于设置一个文本段落的字形:

<p style="font-family:arial, sans-serif, 'times roman'">

这个示例具有几个有趣的部分。第一,将arial指定为主字体。大小写不影响字体系列,因此arial与Arial或ARIAL没有什么不同。关于这段代码的另一个有趣的方面是:字体名称“times roman”是用单引号括住的,因为它中间有一个空格。不过,由于'times roman'出现在sans-serif的通用规范之后,将不太可能使用它。由于sans-serif位于第二个位置,因此它告诉浏览器:“如果这台机器上没有安装Arial,那么就使用默认的sans-serif字体。”

font-size和color样式规则也常用于控制字体的大小和颜色。font-size样式可以设置为一种预先定义的大小(如small、medium或large);color则可以设置为一种预先定义的颜色(如white、black、blue、red或green),或者可以把它设置为一种特定的十六进制颜色(如#ffb499)。下面是前一个段落示例的更好版本,并且指定了字体大小和颜色:

<p style="font-family:arial, 'times roman', sans-serif; font-size:;
color:green">

程序清单6.3中的示例Web内容以及如图6.3所示的结果,使用了一些字体样式规则来创建一份基本的在线简历的开始部分。

注意:

在第7章将学习十六进制颜色。目前,只需理解color样式规则允许指定精确的颜色,而不仅仅是使用green、blue、orange等。
程序清单6.3 使用字体样式规则创建基本的简历

<!DOCTYPE html>
<html lang="en">
 <head>
  <title>R&eacute;sum&eacute; for Jane Doe</title>
  <style type="text/css">
   body {
    font-family: Verdana, sans-serif;
    font-size: 12px;
   }
   header {
    text-align: center;
   }
   h1 {
    font-family:, serif;
    font-size:28px;
    text-align:center;
   }
   p.contactinfo {
    font-size:14px;
   }
   p.categorylabel {
    font-size:12px;
    font-weight:bold;
    text-transform:uppercase;
   }
   div.indented {
    margin-left: 25px;
   }
  </style>
 </head>
 <body>
         <header>
         <h1>Jane Doe</h1>
         <p class="contactinfo">, Sometown,
         CA 93829<br/>
         tel: 555-555-1212, e-mail: jane@doe.com</p>
         </header>
         <section>
         <p class="categorylabel">Summary of Qualifications</p>
         <ul>
         <li>Highly skilled and dedicated professional offering a
          solid background in whatever it is you need.</li>
         <li>Provide comprehensive direction for whatever it is
         that will get me a job.</li>
         <li>Computer proficient in a wide range of industry-related
         computer programs and equipment. Any industry.</li>
         </ul>
         </section>
         <section>
         <p class="categorylabel">Professional Experience</p>
         <div class="indented">
            <p><strong>Operations Manager,
             Super Awesome Company, Some City, CA [Sept 2002 –
            present]</strong></p>
            <ul>
            <li>Direct all departmental operations</li>
            <li>Coordinate work with internal and external
            resources</li>
            <li>Generally in charge of everything</li>
            </ul>
            <p><strong>Project Manager,
        Less Awesome Company, Some City, CA [May 2000 - Sept
        2002]</strong></p>
        <ul>
        <li>Direct all departmental operations</li>
        <li>Coordinate work with internal and external
        resources</li>
        <li>Generally in charge of everything</li>
        </ul>
        /div>
        </section>
        <section>
        <p class="categorylabel">Education</p>
     <ul>
     <li>MBA, , May 2002</li>
     <li>B.A, Business Administration, ,
       May 2000</li>
     </ul>
       </section>
     <section>
        <p class="categorylabel">References</p>
     <ul>
        <li>Available upon request.</li>
     </ul>
     </section>
 </body>
</html>

使用CSS,如你在第3章中所学到的,它把样式集组织成类,可以看到文本格式化是如何应用于这段内容的不同区域的。如果密切查看div.indented类的定义,将会看到margin-left样式的使用。这个样式对元素的左边应用一定的空间量(在这个示例中是25像素),这个空间将导致图6.3中所示的缩进效果。

时间: 2024-11-10 00:58:10

《HTML5+CSS3网页设计入门必读》——6.3 调整字体的相关文章

《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网页设计入门必读》——6.4 使用Web字体

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

《HTML5+CSS3网页设计入门必读》——2.8 转变(CH-CH变化)

2.8 转变(CH-CH变化) 元素big已经过时了,但元素small却还没有.通过重新定义small的含义,这种显著的矛盾已经得到解决.small的含义不再是其字面意义,即"在小号字体下进行显示".相反,其语义值变为法律术语.条款或附属细则以小号字体显示. 当然,十有八九,开发人员会以小号字体显示附属细则,但重点是该元素的字面意义已被取代. 元素b曾表示"用粗体显示".现在,它被用来将一些文本"偏离正常的样式而不具有任何额外的重要性".如果文本