HTML元素结构
如前所述,HTML文档由HTML元素组成。本文仔细研究了HTML元素的基本结构。
HTML元素由以下部分组成:
- 开始标签
- 属性
- 元素主体
- 结束标签
在本文的其余部分中,将对这些部分中的每个部分进行解释。
元素名称+开始和结束标签
HTML元素具有开始标记和结束标记。例如,<html>和</ html>。
字符<打开标签,而此>关闭标签。标签名称前的斜杠字符将其标记为结束标签。
元素内容写在这两个标签之间。元素内容也称为元素主体。这是一个例子:
<b>Text bla bla</b>
该示例显示了一个<b>元素,该元素由开始标签(<b>),元素内容(文本bla bla)和结束标签(</ b>)组成。
元素的名称写在开始和结束标记内。在上面的示例中,元素的名称为" b",是" bold"的缩写。 b元素标记其主体以粗体显示。以后的文章将更详细地介绍可用的各种元素。
空元素
某些HTML元素没有元素主体,这意味着我们不能在开始标记和结束标记之间编写任何文本。一个示例是br
元素,该元素在HTML文档中添加了换行符。这是一个例子:
<br>
空的HTML元素不需要结束标记。我们只需按照上面的示例所示编写开始标签。
元素属性
HTML元素可以具有属性。属性嵌入在HTML元素的开始标记内。这是一个例子:
<table border="0"> ... </table>
上面的table元素具有一个名为border的属性。该属性的值为0。
属性声明的格式为:
name="value"
=和引号是属性声明的一部分,但既不是属性名称也不是值的一部分。我们可以使用双引号或者单引号字符作为引号。这是两个示例:
<table border="0"> ... </table> <table border='0'> ... </table>
这两个例子都是有效的。
实际上,可以省略属性值周围的引号。这是一个例子:
<table border=0> ... </table>
这是具有相同border属性的相同表元素,但属性值周围没有引号。如果省略引号,则属性值不能包含空格。如果属性值包含空格,请用引号将属性值引起来。
一些属性没有价值。它们的存在或者缺失本身都具有意义。这是一个例子:
<input type="checkbox" checked>
该输入元素具有名为" checked"的属性,该属性没有值。如果存在" checked"属性,则表示该复选框应显示为选中状态。如果不存在" checked"属性,则表示该复选框应未选中显示。
嵌套元素
一些HTML元素可以将其他HTML元素嵌套其中。这是一个例子:
<p> Mary had a <b>little</b> lamb. </p>
本示例显示了一个<p>元素,其中包含文本。文本的一部分被<b>元素包围。该<b>元素嵌套在<p>元素内。 <p>元素用于文本的各个段落,而<b>元素用于将文本标记为粗体。这两个元素将在以后的文章中更详细地说明。
确保元素的嵌套正确完成,这意味着开始和结束标签的写入顺序正确。这是一个粗体和斜体文本的示例:
<p><b><i>Bold italic text</i></b></p>
注意内部元素<i>在<b>元素内部如何开始和结束。一个常见的错误是交换结束标签,例如:
<p><b><i>Bold italic text</b></i></p>
请注意,现在如何交换<i>和<b>元素的结束标记。 <b>元素在<i>元素之前结束。这不是有效的HTML。大多数浏览器仍会正确显示HTML,但不要依赖它。确保开始标记和结束标记嵌套正确。
嵌套元素通常是实现更高级的文档格式所必需的,这将在本书的后面看到。
空格和换行符
浏览器将忽略多余的空格和换行符。空格字符包括空格字符,制表符,换行符和代表文档中空白(白色)的类似字符。换行符是表示常规文本编辑器(如记事本)中新行的字符。
这是两个带有不同数量的空格字符的示例:
<p>John is good</p>
<p> John is good </p>
这两段文字将在浏览器中类似显示。浏览器将忽略段落中第一个非空白字符之前的空白。浏览器还忽略<p>元素内的换行符。
此外,浏览器会忽略单词之间的多余空格,仅在单词之间显示一个空格,并且会忽略段落中最后一个单词之后的多余空格和换行符。
两个单词之间的单个换行符将显示为空格。单词之间的多余换行符将被忽略,就像空格字符一样。
标签内的空白
浏览器还忽略了多余的空格和HTML标记内某些位置的换行符。这里有些例子:
<p > Text </p> <table width="100 height="200" > </table>
这两个示例都是有效的HTML。
但是,不允许在<字符和元素名称之间使用空格。因此,这不是有效的HTML:
< p>
浏览器使用第一个<字符之后的文本来确定遇到的HTML元素。如果找到空白,则浏览器将假定它不是HTML标记,而是仅<字符,然后按原样显示。
元素名称中的大写和小写字符
HTML元素名称不区分大小写,这意味着无论用大写还是小写都无所谓。这意味着,以下两个示例在浏览器中显示为相同:
<b>My Text</b> <B>My Text</B>
在许多情况下,属性名称和属性值也不区分大小写。
就个人而言,在编写元素名称,属性名称和值时,我总是使用小写字母。我发现它更容易阅读,也更容易编写。
元素内部的内容不区分大小写。 <b>元素("我的文本")中的文本将按照我们编写时的大小写字母显示。