html html

评论

要在HTML代码中嵌入注释,请使用以下结构:

<!——评论文本——>

实体

在HTML代码中使用实体有两个原因。

保留字符的实体

有一些字符不能直接在HTML代码中输入,因为它们在语言中具有特殊的含义。这些字符总是必须用实体代码替换:

非ascii字符的实体

除了上面列出的特殊字符外,您可以在标准的美式英语键盘上直接将其他赢博体育字符键入HTML,而不必将其替换为实体代码。出现在标准美式英语键盘中的赢博体育字符都是ASCII字符集的成员。基本字符集之外的字符必须使用HTML实体来构建。下面是一些基本的例子:

完整的参考

这里是一个网站,有一个方便的常用实体代码表。

这个站点有更广泛的实体代码名称列表。

实体代码,二进制和16进制

赢博体育存储在计算机中的信息都是以数字的形式存储的。为了表示文本,计算机使用一种编码系统,该系统为每个字符分配一个数字代码。最简单的方法是20世纪60年代在美国建立的ASCII系统。

关于计算机的另一个相关事实是,计算机使用以2为基数(或二进制)表示存储赢博体育数字。此外,计算机通常将以2为基数的二进制数(或位)分组为8位的子组,称为字节。

下面是一个如何工作的例子。字母“A”的ASCII码是65,看起来像

01000001

当我们把它写成以2为基底的符号时。

当计算机科学家处理以2为基数的数字时,他们经常使用一个简单的技巧来使数字的表示更紧凑。这个数不是用2为底,而是用更方便的16为底。在这个数字系统中,数字的范围是从0到15,而不是以10为基数的0到9。为了表示16进制中10到15的数字,我们用字母A到F。

下面是如何将以2为基数的数转换为以16为基数的数。我们首先将数字的位分组为大小为4的组:

0100 0001

这些大小为4的组都可以用16进制的一位数字表示:

4 1

为了避免以16为基数(或十六进制)的数字与以10为基数的数字混淆,计算机科学家使用在数字前面加一个“x”的惯例:

x41

Unicode

当我们切换到比ASCII系统更广泛的字符编码系统时,赢博体育这些关于数字系统的信息变得更加重要。目前使用的最广泛的编码系统是Unicode系统,它足够大,可以包含赢博体育人类书面语言中使用的字符。

例如,对应中文的“气”或日文的“气”的字符“”通过编码号在Unicode中编码

x6C17

若要在网页中嵌入此字符,可以构造一个实体代码,该实体代码给出相应的代码号

& # x6C17;

utf - 8

使用您想要嵌入到文档中的符号的Unicode代码号来构造HTML实体,对于有限的使用效果很好。如果你偶尔需要在你的文本中嵌入一个特殊的符号,你可以使用实体代码。然而,如果你需要在网页中嵌入一段很长的中文引文,这种方法很快就会变得不切实际。

上面的最后一个示例显示了Unicode引入的一个明显的复杂性,即许多字符需要不止一个字节来表示。这个字符至少需要两个字节来表示。这给HTML带来了一个大问题,因为HTML通常希望您使用ASCII编码来构造标记。这意味着在实践中,我们需要找到一种方法,既使用ASCII编码组成标记的字母,又使用Unicode编码非英语语言的内容。

UTF-8系统是一个聪明的方法,它允许我们在同一个HTML文档中同时使用ASCII和Unicode。

以下是UTF-8背后的基本思想:

  1. 0到127范围内的ASCII字符通过其常用的ASCII码表示,每个字符使用单个字节。
  2. 0到127的赢博体育二进制表示都以0作为其第一个位。
  3. 赢博体育大于127的数字的第一位都是1。
  4. 为了表示通常需要一个以上字节的数字,UTF-8使用一种专门的编码,将所需的位分散到几个字节中。

下面是一个具体的例子来说明UTF-8编码是如何工作的。再考虑一下我们的例子字符。在16进制中,该字符通过代码号表示

6 c 17

这个数的二进制等价物是

01101100 00010111

UTF-8将总共使用三个字节来表示这个数字,使用如下所示的结构:

1110xxxx 10xxxxxx 10xxxxxx

第一个字节开头的序列1110表明我们要表示的字符总共包含3个字节。后面两个字节前面的10个序列作为特殊标记。上面代码中的位将分布在结构中的x位置上,产生如下的二进制内容:

11100110 10110000 10010111

尽管UTF-8背后的技术细节相当复杂,但实际上UTF-8在网页中非常容易使用。您所需要做的就是确保用于构造页面的编辑器支持UTF-8。(大多数现代文本编辑器,包括notepad++和TextWrangler,都支持UTF-8内容。)您可以自由地复制和粘贴英语以外语言的内容到您的网页,编辑器会自动将内容编码为UTF-8。

为了确保浏览器能够正确呈现页面,您需要做的唯一额外步骤是在页面顶部放置一个特殊声明。在页面的head元素中,放置以下元素:

<meta http-equiv=" content - type " content="text/html;utf - 8字符集= " / >

一个毫无根据的例子

为了证明上面描述的方法工作得很好,这里有一个更长的UTF-8引用:

大卫·鲍伊(David Bowie)是我的最爱。Ich war 13,还在专辑“Ziggy Stardust And The spider From Mars”veröffentlicht wurde。Danach atmete ich Bowie förmlich。我不会让你失望的。Ich kante jedes worth seiner Songs auswendig, hörte sie ununterbrochen。Ich ließ mir sogar seinen Haarschnitt verpassen, and war mächtig stolz darauf。

HTML 4 vs HTML 5

HTML语言在过去的25年里经历了相当大的发展。HTML本身已经发展了5个版本,你可能遇到的大多数网站要么使用HTML 4,要么使用HTML 5。

为了向浏览器表明您正在为页面使用哪个版本的HTML,您可以在文件的第一行放置DOCTYPE声明。HTML 4使用该声明

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

而HTML 5使用

<!DOCTYPE html >

除了极少数例外,HTML 5是向后兼容HTML 4的。这意味着,如果您有一个用HTML 4编码的页面,您可以简单地将DOCTYPE声明更改为HTML 5表单,一切都应该继续工作。迁移到HTML 5将使您能够访问一些新的语言特性(如下所述)。

在使用HTML 5时,唯一需要注意的是一些较旧的浏览器(如Windows XP上的Internet Explorer 6)不支持HTML 5。

HTML 5中的新元素

HTML 5提供了许多新元素。下面我将描述这些新元素的不同组。

语义元素

这些元素的目的是描述文档的特定部分所扮演的角色。在HTML 5之前,HTML程序员会通过使用<div>元素和style属性来设置页面的不同部分(在讨论CSS时,我们将看到更多关于样式的内容)。例如,要设置一段导航链接,程序员可以这样做

<div style="nav">

在HTML 5中,现在有一个<nav>元素来达到同样的目的。

下面是一些语义元素的列表。

一旦我们开始使用CSS,这些语义元素中的许多将变得更加有用。在我们讨论了CSS的基础知识之后,我将重新讨论其中的一些元素。

新的表单输入类型

HTML 5扩展了输入元素的范围,添加了用于输入日期、电子邮件地址和url的元素。本文在第7章讨论了这些新元素。

视频元素

在网页中嵌入视频曾经是一个有点笨拙的过程。目前,将视频放到页面中最直接的方法是使用视频共享服务,如YouTube或Vimeo。这些服务将允许你上传视频,然后提供一段HTML代码,你可以将其粘贴到你的页面中。下面是一个YouTube视频嵌入页面的例子:

HTML 5提供了一个新的