HTML01
HTML简介
什么是HTML?
HTML是用来描述网页的一种语言。
- HTML指的是超文本标记语言(Hyper Text Markup Language)
- HTML不是一种编程语言,而是一种标记语言(markup language)
- 标记语言是一套标记标签(markup tag)
- HTML使用标记标签来描述网页
HTML标签
HTML标记标签通常被称为HTML标签(HTML tag)
- HTML标签是由尖括号包围的关键词,比如
<html>
- HTML标签通常是成对出现的,比如
<b>
和</b>
- 标签对中的第一个标签是开始标签,第二个标签是结束标签
- 开始和结束标签也被称为开放标签和闭合标签
HTML文档=网页
- HTML文档描述网页
- HTML文档包含HTML标签和纯文本
- HTML文档也被称为网页
Web浏览器的作用是读取HTML文档,并以网页的形式显示出它们。浏览器不会显示HTML标签,而是使用标签来解释页面的内容:
<html>
<body>
<h1>
我的第一个标题
</h1>
<p>
我的第一个段落
</p>
</body>
</html>
例子解释
<html>
与</html>
之间的文本描述网页<body>
与</body>
之间的文本是可见的页面内容<h1>
与</h1>
之间的文本被显示为标题<p>
与</p>
之间的文本被显示为段落
HTML基础
HTML标题
HTML标题(Heading)是通过<h1>
-<h6>
等标签进行定义的
实例
<h1>
This is a heading
</h1>
<h2>
This is a heading
</h2>
<h3>
This is a heading
</h3>
HTML段落
HTML段落是通过<p>
标签进行定义的
实例
<p>
This is a paragraph.
</p>
<p>
This is a another paragraph.
</p>
HTML链接
HTML链接是通过<a>
标签进行定义的
实例
<a href="http://www.w3school.com.cn">
This is a link
</a>
注释:在href属性中指定链接的地址。
HTML图像
HTML图像是通过<img>
标签进行定义的
实例
<img src="w3school.jpg" width="104" height="142" />
注释:图像的名称和尺寸是以属性的形式提供的
HTML元素
HTML文档是由HTML元素定义的
HTML元素
HTML元素指的是从开始标签(start tag)到结束标签(end tag)的所有代码
# 开始标签 元素内容 结束标签
<p> This is a paragraph </p>
<a href="default.htm"> This is a link </a>
<br />
注释:开始标签常被称为开放标签(opening tag),结束标签常称为闭合标签(closing tag)
HTML元素语法
- HTML元素以开始标签起始
- HTML元素以结束标签终止
- 元素的内容是开始标签与结束标签之间的内容
- 某些HTML元素具有空内容(empty content)
- 空元素在开始标签中进行关闭(以开始标签的结束而结束)
- 大多数HTML元素可拥有属性
嵌套的HTML元素
大多数HTML元素可以嵌套(可以包含其他HTML元素)
HTML文档由嵌套的HTML元素构成
HTML文档实例
<html>
<body>
<p>
This is my first paragraph.
</p>
</body>
</html>
上面的例子包含三个HTML元素
HTML实例解释
元素:
<p>
This is my first paragraph.
</p>
这个<p>
元素定义了HTML文档中的一个段落。
这个元素拥有一个开始标签<p>
,以及一个技术标签</p>
。
元素内容是:This is mu first paragraph.
元素:
<body>
<p>
This is my first paragraph.
</p>
</body>
<body>
元素定义了HTML文档的主体。
这个元素拥有一个开始标签<body>
,以及一个结束标签</body>
元素内容是另一个HTML元素(p元素)
元素:
<html>
<body>
<p>
This is my first paragraph.
</p>
</body>
</html>
<html>
元素定义了整个HTML文档
这个元素拥有一个开始标签<html>
,以及一个结束标签<html>
元素内容是另一个HTML元素(body元素)
不要忘记结束标签
即使您忘记了使用结束标签,大多数浏览器也会正确地显示HTML:
<p>This is a paragraph
上面例子在大多数浏览器中都没问题,但不要依赖这种做法。忘记使用结束标签会产生不可预料的结果或错误。
空的HTML元素
没有内容的HTML元素被称为空元素。空元素是在开始标签中关闭的。
<br>
就是没有关闭标签的空元素(<br>
标签定义换行)
在 XHTML、XML 以及未来版本的 HTML 中,所有元素都必须被关闭
在开始标签中添加斜杠,比如 <br />
,是关闭空元素的正确方法,HTML、XHTML 和 XML 都接受这种方式
即使 <br>
在所有浏览器中都是有效的,但使用 <br />
其实是更长远的保障
HTML提示:使用小写标签
HTML 标签对大小写不敏感:<P>
等同于 <p>
HTML属性
属性为 HTML 元素提供附加信息
HTML 属性
HTML 标签可以拥有属性。属性提供了有关 HTML 元素的更多的信息。
属性总是以名称/值对的形式出现,比如:name="value"。
属性总是在 HTML 元素的开始标签中规定。
属性实例
HTML 链接由 <a>
标签定义。链接的地址在 href 属性中指定:
<a href="http://www.w3school.com.cn">This is a link</a>
更多HTML属性实例
<h1 align="center">
拥有关于对齐方式的附加信息
</h1>
<body bgcolor="yellow">
拥有关于背景颜色的附加信息
</body>
<table border="1">
拥有关于表格边框的附加信息
</table>
HTML提示:使用小写属性,属性和属性值对大小写不敏感,但仍旧推荐小写的属性/属性值
始终为属性值加引号
属性值应该始终被包括在引号内。双引号是最常用的,不过使用单引号也没有问题。
在某些个别的情况下,比如属性值本身就含有双引号,那么您必须使用单引号,例如:
<h1 name='Bill "HelloWorld" Gates'>
so good
</h1>
HTML属性参考手册
HTML标题
在 HTML 文档中,标题很重要
HTML 标题
标题(Heading)是通过 <h1>
- <h6>
等标签进行定义的。
<h1>
定义最大的标题。<h6>
定义最小的标题。
实例
<h1>This is a heading</h1>
<h2>This is a heading</h2>
<h3>This is a heading</h3>
注释:浏览器会自动地在标题的前后添加空行
注释:默认情况下,HTML 会自动地在块级元素前后添加一个额外的空行,比如段落、标题元素前后
标题很重要
请确保将 HTML heading 标签只用于标题。不要仅仅是为了产生粗体或大号的文本而使用标题。
搜索引擎使用标题为您的网页的结构和内容编制索引。
因为用户可以通过标题来快速浏览您的网页,所以用标题来呈现文档结构是很重要的。
应该将 h1 用作主标题(最重要的),其后是 h2(次重要的),再其次是 h3,以此类推。
HTML水平线
<hr />
标签在 HTML 页面中创建水平线。
hr 元素可用于分隔内容。
实例
<p>This is a paragraph</p>
<hr />
<p>This is a paragraph</p>
<hr />
<p>This is a paragraph</p>
提示:使用水平线 (
标签) 来分隔文章中的小节是一个办法(但并不是唯一的办法)
HTML注释
可以将注释插入 HTML 代码中,这样可以提高其可读性,使代码更易被人理解。浏览器会忽略注释,也不会显示它们。
注释是这样写的:
实例
<!-- This is a comment -->
注释:开始括号之后(左边的括号)需要紧跟一个叹号,结束括号之前(右边的括号)不需要
HTML段落
可以把HTML文档分割为若干段落
HTML段落
段落是通过 <p>
标签定义的
实例
<p>
This is a paragraph
</p>
<p>
This is another paragraph
</p>
注释:浏览器会自动地在段落的前后添加空行。(
是块级元素)
HTML折行
如果您希望在不产生一个新段落的情况下进行换行(新行),请使用 <br />
标签:
<p>
This is<br />a paragraph<br /> with line breaks
</p>
<br />
元素是一个空的 HTML 元素。由于关闭标签没有任何意义,因此它没有结束标签
<br>
还是<br />
您也许发现 <br>
与 <br />
很相似
在 XHTML、XML 以及未来的 HTML 版本中,不允许使用没有结束标签(闭合标签)的 HTML 元素
即使 <br>
在所有浏览器中的显示都没有问题,使用 <br />
也是更长远的保障
HTML输出-有用的提示
我们无法确定 HTML 被显示的确切效果。屏幕的大小,以及对窗口的调整都可能导致不同的结果。
对于 HTML,您无法通过在 HTML 代码中添加额外的空格或换行来改变输出的效果。
当显示页面时,浏览器会移除源代码中多余的空格和空行。所有连续的空格或空行都会被算作一个空格。需要注意的是,HTML 代码中的所有连续的空行(换行)也被显示为一个空格
HTML样式
style 属性用于改变 HTML 元素的样式。
HTML的style属性
style 属性的作用:
提供了一种改变所有 HTML 元素的样式的通用方法。
样式是 HTML 4 引入的,它是一种新的首选的改变 HTML 元素样式的方式。通过 HTML 样式,能够通过使用 style 属性直接将样式添加到 HTML 元素,或者间接地在独立的样式表中(CSS 文件)进行定义。
不赞成使用的标签和属性
在 HTML 4 中,有若干的标签和属性是被废弃的。被废弃(Deprecated)的意思是在未来版本的 HTML 和 XHTML 中将不支持这些标签和属性。
这里传达的信息很明确:请避免使用这些被废弃的标签和属性!
应该避免使用下面这些标签和属性:
# 标签 描述
<center> 定义居中的内容
<font>和<basefont> 定义HTML字体
<s>和<strike> 定义删除线文本
<u> 定义下划线文本
# 属性 描述
align 定义文本的对齐方式
bgcolor 定义背景颜色
color 定义文本颜色
对于以上这些标签和属性:请使用样式代替!
HTML样式实例-背景颜色
background-color属性为元素定义了背景颜色:
<html>
<body style="background-color:yellow">
<h2 style="background-color:red">
This is a heading
</h2>
<p style="background-color:green">
This is a paragraph.
</p>
</body>
</html>
style属性淘汰了“旧的”bgcolor属性
HTML样式实例-字体、颜色和尺寸
font-family、color以及font-size属性分别定义元素中文本的字体系列、颜色和字体尺寸:
<html>
<body>
<h1 style="font-family:verdana">
A heading
</h1>
<p style="font-family:aial;color:red;font-size:20px;">
A paragraph.
</p>
</body>
</html>
style属性淘汰了旧的
<font>
标签
HTML样式实例-文本对齐
text-align属性规定了元素中文本的水平对齐方式:
<html>
<body>
<h1 style="text-align:center">
This is a heading
</h1>
<p>
The heading above is aligned to the center of this page.
</p>
</body>
</html>
style属性淘汰了旧的"aling"属性
HTML格式化
HTML可定义很多供格式化输出的元素,比如粗体和斜体字。
文本格式化标签
# 标签 描述
<b> 定义粗体文本
<big> 定义大号文字
<em> 定义着重文字
<i> 定义斜体字
<small> 定义小号字
<strong> 定义加重语气
<sub> 定义下标字
<sup> 定义上标字
<ins> 定义插入字
<del> 定义删除子
<s> 不赞成使用。使用<del>代替
<strike> 不赞成使用。使用<del>代替
<u> 不赞成使用。使用<del>代替
"计算机输出"标签
# 标签 描述
<code> 定义计算机代码
<kbd> 定义键盘码
<samp> 定义计算机代码样本
<tt> 定义打字机代码
<var> 定义变量
<pre> 定义预格式文本
<listing> 不赞成使用。使用<pre>代替
<plaintext> 不赞成使用。使用<pre>代替
<xmp> 不赞成使用。使用<pre>代替
引用、引用和术语定义
# 标签 描述
<abbr> 定义缩写
<acronym> 定义首字母缩写
<address> 定义地址
<bdo> 定义文字方向
<blockquote> 定义长的引用
<q> 定义短的引用语
<cite> 定义引用、引证
<dfn> 定义一个定义项目
文本格式化实例
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<b>这是b标签</b>
<br />
<big>这是big标签</big>
<br />
<em>这是em标签</em>
<br />
<i>这是i标签</i>
<br />
<small>这是small标签</small>
<br />
<strong>这是strong标签</strong>
<br />
人在做<sub>天在看</sub>
<br />
三人行<sup>必有我师焉</sup>
<br />
what the <del>fuck</del> <ins>***</ins>
<br />
</body>
</html>
预格式文本
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<pre>
这是
预格式文本
它保留了 空格
和换行
</pre>
<p>
pre标签很适合显示计算机代码
</p>
<pre>
l = [1, 2, 3, 4, 5]
for i in l:
if i == 3:
print("游戏结束,拜拜...")
</pre>
</body>
</html>
"计算机输出"标签
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<code>
Computer code
</code>
<br />
<kbd>
Keyboard input
</kbd>
<br />
<tt>
Teletype text
</tt>
<br />
<samp>
Sample text
</samp>
<br />
<var>
Computer variable
</var>
<br />
</body>
</html>
地址
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<address>
Written by <a href="mailto:webmaster@example.com">Donald Duck</a>.<br />
Visit us at:<br />
Example.com<br />
Box 564, Disneyland<br />
USA
</address>
</body>
</html>
缩写和首字母缩写
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<abbr title="etcetera">
etc.
</abbr>
<br />
<acronym title="World Wide Web">
WWW
</acronym>
<p>
在某些浏览器中,当您把鼠标移至缩略词语上时,title可用于展示表达的完整版本。
</p>
<p>
进对于IE5中的acronym元素有效。
</p>
<p>
对于Netscape6.2中的abbr和acronym元素都有效。
</p>
</body>
</html>
文字方向
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<p>
如果您的浏览器支持bi-directional override (bdo),下一行会从右向左输出 (rtl)
</p>
<bdo dir="rtl">
Here is some Hebrew text
</bdo>
</body>
</html>
块引用
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
这是长的引用:
<blockquote>
这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。这是长的引用。
</blockquote>
这是短的引用:
<p>
这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。这是短的引用。
</p>
<p>
使用blockquote元素的话,浏览器会插入换行和外边距,而q元素不会有任何特殊的呈现。
</p>
</body>
</html>
删除字效果和插入字效果
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<p>
一打有 <del>二十</del> <ins>十二</ins> 件。
</p>
<p>
大多数浏览器会改写为删除文本和下划线文本。
</p>
<p>
一些老实的浏览器会把删除文本和下划线文本显示为普通文本。
</p>
</body>
</html>
HTML引用
HTML <q>
用于短的引用
HTML <q>
元素定义短的引用。
浏览器通常会为 <q>
元素包围引号。
<!DOCTYPE html>
<html>
<body>
<p>浏览器通常会在 q 元素周围包围引号。</p>
<p>WWF 的目标是 <q>构建人与自然和谐相处的世界。</q></p>
</body>
</html>
用于长引用的 HTML <blockquote>
HTML <blockquote>
元素定义被引用的节。
浏览器通常会对 <blockquote>
元素进行缩进处理。
<!DOCTYPE html>
<html>
<body>
<p>浏览器通常会对 blockquote 元素进行缩进处理。</p>
<blockquote cite="http://www.worldwildlife.org/who/index.html">
五十年来,WWF 一直致力于保护自然界的未来。
WWF 工作于 100 个国家,并得到美国一百二十万会员及全球近五百万会员的支持。
</blockquote>
</body>
</html>
用于缩略词的 HTML <abbr>
HTML <abbr>
元素定义缩写或首字母缩略语。
对缩写进行标记能够为浏览器、翻译系统以及搜索引擎提供有用的信息。
<!DOCTYPE html>
<html>
<body>
<p><abbr title="World Health Organization">WHO</abbr> 成立于 1948 年。</p>
<p>对缩写进行标记能够为浏览器、翻译系统以及搜索引擎提供有用的信息。</p>
</body>
</html>
用于联系信息的 HTML <address>
HTML <address>
元素定义文档或文章的联系信息(作者/拥有者)。
此元素通常以斜体显示。大多数浏览器会在此元素前后添加折行。
<!DOCTYPE html>
<html>
<body>
<p>HTML address 元素定义文档或文章的联系信息(作者/拥有者)。</p>
<address>
Written by Bill Gates.<br>
Visit us at:<br>
Example.com<br>
Box 564, Disneyland<br>
USA
</address>
</body>
</html>
用于著作标题的 HTML <cite>
HTML <cite>
元素定义著作的标题。
浏览器通常会以斜体显示 <cite>
元素。
<!DOCTYPE html>
<html>
<body>
<p>HTML cite 元素定义著作的标题。</p>
<p>浏览器通常会以斜体显示 cite 元素。</p>
<img src="img_the_scream.jpg" width="220" height="277" alt="The Scream">
<p><cite>The Scream</cite> by Edward Munch. Painted in 1893.</p>
</body>
</html>
用于双向重写的 HTML <bdo>
HTML <bdo>
元素定义双流向覆盖(bi-directional override)。
元素用于覆盖当前文本方向:
<!DOCTYPE html>
<html>
<body>
<p>
如果您的浏览器支持 bdo,则文本将从右向左进行书写 (rtl):
</p>
<bdo dir="rtl">
This line will be written from right to left
</bdo>
</body>
</html>
HTML注释
HTML 注释标签
您能够通过如下语法向 HTML 源代码添加注释:
<!DOCTYPE html>
<html>
<body>
<!--这是一段注释。注释不会在浏览器中显示。-->
<p>这是一段普通的段落。</p>
</body>
</html>