2-6 解析我的第一个HTML文件
为了方便解说,笔者将ch2_1.html文件的内容再列示一次:
从上面的程序可以知道,相较2-2节所述HTML文件结构而言,我们只增加了3行数据,分别是第4行、第5行和第8行。
2-6-1 <meta>元素
程序第4行笔者使用了<meta>元素,这个元素必须放在<head>标记内。有关<meta>的另一个规定是,必须写在HTML文件前1024B之内。<meta>元素的主要目的是提供有关这份HTML文件的相关信息。例如编码方式、作者信息、关键词信息或重新导向网址以便将用户导向至另一个网址等。由于有关<meta>的设定有很多,所以允许<head>标记内有多个<meta>元素存在。它的相关属性设定如下:
□ charset
这是设定这份HTML文件的编码方式,建议设定此属性为“utf-8”。
UTF-8英文全名是8-bit Unicode Transformation Format,这是一种适合多语系的编码规则,使用可变长度的方式存储字符,以节省内存空间。例如,对于英文字母而言使用1B存储即可,对于含有附加符号的希腊文、拉丁文或阿拉伯文等则用两个字节空间存储字符,汉字则是以3个字节空间存储字符,只有极少数的平面辅助文字需要4个字节空间储存字符。也就是说,这种编码规则已经包含了全球所有语言的字符了,所以采用这种编码方式设计网页时,其他国家的浏览器只要支持UTF-8编码规则即可正常显示。例如,美国人即使使用英文版的Internet Explorer浏览器,也可以正常显示汉字。
另外,有时我们在网络世界浏览其他国家的网页时,会发生显示乱码的情况,主要原因就是对方网页设计师并没有将charset属性设置为“utf-8”。例如,早期简体中文的编码是GB2312,这种编码方式是以2个字符的长度存储一个简体中文字,由于这种编码方式不能用于多语系,无法在繁体中文Windows环境中使用,如果网页设计师采用此编码方式设计网页,将造成港、澳和台湾繁体中文Windows环境下的用户在浏览此网页时显示乱码。
□ name
这个属性的值有:
author:文件的作者信息。
description:文件的描述,在此设定的内容会出现在搜索引擎的搜寻结果中。
keywords:文件相关的关键词,方便搜索引擎使用。如果要输入多个关键词,彼此间用逗号隔开。
generator:制作此文件所使用的软件。
revised:文件最新版本信息。
使用name属性时,需搭配一个content属性,这相当于将content的属性值关联到name的属性值。
实例1:下面的语句提供作者的信息是“洪锦魁”。
<meta name="author" content="洪 锦魁">
实例2:下面的语句搜索引擎提供3个关键词,分别是“洪锦魁”“深石”和“DeepStone”。
<meta name="keywords" content="洪锦 魁, 深石, DeepStone">
实例3:下面的语句是对HTML文件页面的描述。
<meta name="description" content= "HTML5+CSS3王者归来书籍范例">
实例4:下面的语句列出了本文件最新版本的信息。
<meta name="revised" content="洪锦魁 2018/01/01">
□ http-equiv
这个属性的值有:
content-type:在HTML4.01以前,可以使用此属性值设定语言编码信息,但是现在可以用charset属性取代。
refresh:可以设定经过几秒后重新读取这个页面,或是设定经过几秒后重新导向至另一个网页。
使用http-equiv属性时,需搭配一个content属性,这相当于将content的属性值关联到http-equiv的属性值。
实例5:下面的语句是设定HTML文件语言编码为台湾繁体中文。
<meta http-equiv="content-language" content="zh-tw">
实例6:下面的语句是设定HTML文件语言编码为简体中文。
<meta http-equiv="content-language" content="zh-ch">
实例7:下面的语句是设定HTML文件语言编码为“utf-8”。
<meta http-equiv="content-type" content="text/html"; charset="utf-8">
注 其实上述实例是HTML老版本的实例,笔者此处只为列举用法,HTML5的网页设计师基本不再使用这些语法,而直接采用ch2_1.html第4行的语法。
实例8:下面的语句是设定HTML文件在经过5秒后自动重新读取页面。
<meta http-equiv="refresh" content="5">
实例9:下面的语句是设定HTML文件在经过5秒后自动导向深石数字公司网页。
<meta http-equiv="refresh" content=":5;http://www.deepstone.con. tw">
上述实例9的功能常用在网页搬家时,可将用户导向新网页以避免客户流失。
2-6-2 <title>元素
这个元素主要是设定文件标题,在<head>标记只能设定一次<title>。标题会出现在浏览器标题、浏览器标记列、浏览记录及收藏列表中,所以在设定时要简洁,同时含义最好可以完整表达整个网页。以ch2_1.html而言,执行后将显示下图所示的文件标题。
上图所示窗口中,左边显示的是ch2_1.html文件的地址,在真实网络世界里这里显示的是网页的地址,可想成Internet地址,第4章会做更完整的说明;右边的是使用<title>元素设定的标题。
2-6-3 文件主体
ch2_1.html文件的第8行内容是其主体,属于<body> … </body>之间的内容将会呈现在网页内。2-6-2节的执行结果图即其在浏览器中输出的内容。