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

简介:

本节书摘来自异步社区《HTML5+CSS3网页设计入门必读》一书中的第6章,第6.3节,作者: 【美】Julie Meloni更多章节内容可以访问云栖社区“异步社区”公众号查看。

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>


<a href=https://yqfile.alicdn.com/2aeec397b7612c8ee10135f0f3e547c6f96772d6.png" >

使用CSS,如你在第3章中所学到的,它把样式集组织成类,可以看到文本格式化是如何应用于这段内容的不同区域的。如果密切查看div.indented类的定义,将会看到margin-left样式的使用。这个样式对元素的左边应用一定的空间量(在这个示例中是25像素),这个空间将导致图6.3中所示的缩进效果。
相关文章
|
3月前
|
前端开发
【前端web入门第四天】02 CSS三大特性+背景图
本文详细介绍了CSS的三大特性:继承性、层叠性和优先级,并深入讲解了背景图的相关属性,包括背景属性、背景图的平铺方式、位置设定、缩放、固定以及复合属性。其中,继承性指子元素自动继承父元素的文字控制属性;层叠性指相同属性后定义覆盖前定义,不同属性可叠加;优先级涉及选择器权重,包括行内样式、ID选择器等。背景图部分则通过具体示例展示了如何设置背景图像的位置、大小及固定方式等。
259 91
|
1月前
|
JSON 移动开发 数据格式
html5+css3+js移动端带歌词音乐播放器代码
音乐播放器特效是一款html5+css3+js制作的手机移动端音乐播放器代码,带歌词显示。包括支持单曲循环,歌词显示,歌曲搜索,音量控制,列表循环等功能。利用json获取音乐歌单和歌词,基于html5 audio属性手机音乐播放器代码。
87 6
|
29天前
|
前端开发
HTML 样式- CSS3
内部样式表适用于单个文件的特别样式,通过&lt;head&gt;部分的&lt;style&gt;标签定义;外部样式表适用于多个页面,通过&lt;link&gt;标签引用外部CSS文件;&lt;style&gt;定义样式,&lt;link&gt;引用资源;已弃用的标签有&lt;font&gt;、&lt;center&gt;、&lt;strike&gt;,属性有color和bgcolor。
|
3月前
|
前端开发
【前端web入门第三天】02 CSS字体和文本
本文详细介绍了CSS中字体和文本的相关属性。字体部分涵盖字体大小、粗细、样式、行高、字体族及`font`复合属性,通过具体示例展示了如何设置和使用这些属性。文本部分则讲解了文本缩进、对齐方式、修饰线及文字颜色等属性,并提供了实用的代码示例。此外,还简要介绍了调试工具中的一些细节,如错误属性标识和属性生效状态的控制。
68 28
WK
|
3月前
|
存储 移动开发 前端开发
HTML5和CSS5有什么区别
HTML5和CSS5在网页设计中扮演不同角色。HTML5是超文本标记语言的第五版,通过新特性如实时更新、跨平台运行及更好的安全性等,定义网页内容和结构。尽管常说CSS5,实际最新的CSS版本包含多个模块如CSS Grid和Flexbox,主要用于控制网页布局和样式,提供强大的选择器、动画支持和响应式设计,与HTML5相辅相成,共同构建现代网页的基础架构。
WK
52 3
|
3月前
|
前端开发 程序员
【前端web入门第二天】01 html语法实现列表与表格_合并单元格
本文介绍了HTML中的列表与表格的使用方法。列表包括无序列表(`&lt;ul&gt;`嵌套`&lt;li&gt;`)、有序列表(`&lt;ol&gt;`嵌套`&lt;li&gt;`)和定义列表(`&lt;dl&gt;`嵌套`&lt;dt&gt;`和`&lt;dd&gt;`)。
62 19
|
3月前
|
前端开发 JavaScript
【前端web入门第三天】01 css定义和引入方式 四种标签选择器
本文档详细介绍了CSS的基础知识及其应用。内容涵盖了CSS的定义、CSS在HTML中的引入方式,包括内部样式表、外部样式表及行内样式表的使用场景与方法。此外,还深入解析了不同种类的选择器:标签选择器、类选择器、ID选择器以及通配符选择器的功能与应用场景,并提供了实例帮助理解。最后,通过具体的新属性示例,指导如何使用这些选择器来实现基本的盒子绘制。适合初学者系统学习CSS。
49 15
|
3月前
|
前端开发 Windows
【前端web入门第一天】02 HTML图片标签 超链接标签 音频标签 视频标签
本文档详细介绍了HTML中的图片、超链接、音频和视频标签的使用方法。首先讲解了`&lt;img&gt;`标签的基本用法及其属性,包括如何使用相对路径和绝对路径。接着介绍了`&lt;a&gt;`标签,用于创建超链接,并展示了如何设置目标页面打开方式。最后,文档还涵盖了如何在网页中嵌入音频和视频文件,包括简化写法及常用属性。
52 13
|
2月前
|
移动开发 前端开发 JavaScript
HTML入门(详细)
HTML入门(详细)
26 0
|
3月前
|
前端开发