一、引言
本章节介绍head元素,它包含着关于文档的信息。尽管head元素及其中的内容不会被浏览器显示,它们却在定义文档的一些特殊方面起着关键作用,这些特性包括javascript代码、文档的名称以及文档的样式声明。
许多人既把head视为一个节,也视为一个元素。作为元素来讲,它可以包含几种其他元素,它们都是本章的关注对象。head元素的一个有趣之处在于它不包括任何会在文档中显示的元素。head元素中可以包括的元素有base、link、meta、script、style、title。
二、base标签
base标签有助于把链接变得更简短、更易维护。它可以用来为文档中的所有链接指定一个基础URL。
base标签只有一个必需的属性——href。它用来指定一个URL,用作文档中的链接的基础URL。
例如在向XHTML文档中加入一个图像时,需要说明在什么地方能找到图像。当多个图像位于同一个目录时,使用<base>标签能够让事情更轻松一些。也就是说,如果文档包含了来自同一个目录的几个图像,那么你可以通过使用<base>标签让它们的URL变短一些。此外,当你决定把这些图像移到一个新的位置时,修改那些链接只是小事一碟,只需修改<base>标签的href属性就行。
当浏览器准备获取图像时,它取出<base>标签中指定的基础URL,将其与所请求的文件相结合。当存在多个图像时,使用<base>标签是一种高效的手段,因为它可以节省键入时间并降低文件的总体大小。
用法:
三、link标签
link元素定义两个链接在一起的文档之间的关系。它最常用于把外部样式表链接进当前的文档。
link元素的属性介绍如下:
- href: 指向所链接的的文档的URL
- media: 说明所链接的文档用于哪种媒体。常见值包括all、braille、print、projection、screen和speech。使用media属性,可以针对不同的媒体类型指定不同的样式表。例如,你可能想让屏幕上的内容显得丰富多彩,但某些用户也许只有单色打印机。这个属性使你可以为每种媒体类型使用一种不同的样式表。
- rel: 定义所链接到的文档与当前文档之间的关系。常见值包括alternate、appendix、bookmark、chapter、contents、copyright、glossary、help、home、index、next、prev、section、start、stylesheet、subsection。
- rev: 与rel相反,这个属性定义当前文档与所链接文档之间的关系。
- type: 指定目标URL的多用途网际邮件扩展(MIME)类型。最常见的值包括用于外部样式表的text/css、用于javascript文件的text/javascript和用于GIF图像文件的image/gif。MIME类型告诉浏览器所下载的文件的类型是什么以及应该如何处理。
用法如下:
四、meta标签
meta标签提供关于文档的信息。搜索引擎经常使用这些信息来为因特网上的网页编目。你使用meta标签提供文档的关键字和说明,搜素引擎可以使用它们来编录你的文档。另一种常见用法是使用http-equiv属性来让浏览器自动刷新文档。meta一词代表元数据(metadata),这个术语通常被解释为“关于数据的数据”。meta标签提供的正是关于文档中的数据的数据。
1. 必需属性
content: 与一个名称或http-equiv关联的值。
2. 可选属性
- http-equiv: 把content属性值与一个特定的http响应头相关联。可以使用它来要求浏览器做某件事,或引用关于文档的来源于外部的信息。
- name: 用于为文档赋予额外的信息。该属性的值来自content属性。常见的名称包括author、keywords、description、summary。
- scheme:用于定义一种用以解释content属性值的格式。
3. 用法
解释meta标签的最好办法就是显示一些简短的样例。你也许常常想让文档在搜索网站上被关联到特定的关键词。通过将meta标签的name属性指定为keywords并将content属性指定为一个用逗号分隔的关键词列表,即可为搜索引擎提供线索。例如,可以使用如下的xhtml代码:
也可以通过将name属性指定为description,然后用content属性值为搜索引擎提供一份关于文档的简短说明:
这里需要注意的是,提供给搜索引擎的信息应尽量简洁。人们使用搜索引擎是为了查找特定信息。
http-equiv属性提供了做一些很棒的事情的能力。首先,为其指定refresh值,可以表明你想让文档按指定的时间间隔被刷新。下面的样例每隔15秒刷新一次文档。(记住,这样的做法应该尽量谨慎使用)。
五、script标签
script标签在令网站变得更动态、更富特色方面起着关键作用。可以用它为xhtml文档加入脚本,以便响应用户的动作。
1. 必需属性
type:说明所包含的脚本的MIME类型。使用javascript时必须设置text/javascript。
2. 可选属性
src:一个指向包含脚本的文档的URL。
六、style标签
如果说link标签的作用是为文档定义外部样式表的话,那么style标签的作用就是为文档创建内部样式表。
1. 必需属性
type:定义样式类型。几乎总是设置为text/css,除非你在使用某种专属的样式语言,而这是应当尽力避免的。
2. 可选属性
media:说明样式影响的是哪种媒体。可能值包括screen、print、tty、tv、projection、handheld、braille、aural、all。all是未指定media属性时所采用的默认值。
3. 用法
media属性使你可以针对不同的输出设备使用不同的样式。例如,设想你撰写了一些在线报告,用户可能想在自己的打印机上把它们打印出来。你很可能会让屏幕上显示的文本比打印页面上的更大一点,而且使用不同的字体。在下面的样例代码中,屏幕字体大小被设置为16px,打印页面的被设置为12px,屏幕和打印媒体的字体粗细都被设置为normal。注意其中的@media规则,使用它可以在一个样式表中指定多种媒体类型。
css中有一种@import语句,用于指示浏览器获取并使用来自一个外部样式表的样式。尽管它也能用在外部样式表中以导入另外一个样式表,但它的典型用法还是用在<style>标签中(必须出现在其他任何规则之前),如下所示:
所导入的外部样式表中的样式的优先级别高于出现在@import语句之前的样式。也可以用多个@import语句导入多个不同的样式表。此外,@import语句的顺序很重要。这些样式规则自顶向下地被应用,因此位于@import列表底端的在优先级别上高于位于列表顶端的。
七、title标签
可以使用title标签为文档提供一个标题。浏览器通常将其显示在标题栏中,并用它来作为书签的默认名称。
要为文档添加标题,只需将要用的文本放在title元素的开标签和闭标签之间即可。
需要注意的是,应该总是为文档指定一个标题。因为它会被显示在浏览器的标题栏中,让用户知道他们正在浏览的是哪个文档,即使其浏览器窗口未被最大化。如果不指定title的话,文档将显示一个空标题。