一、HTML是什么?
HTML(Hyper Text Mark-up Language )即是超文本标记语言,是 WWW 的描述语言,由 Tim Berners-lee提出。通过使用标记标签来描述页面文档结构和表现形式的一种语言,再由浏览器进行解析,然后把结果展示在网页上。HTML标签是网页构成的基础,我们所见到的几乎所有网页都离不开HTML,所以学习HTML可以算是基础中的基础了。
- HTML的英文全称是Hypertext Marked Language,中文叫做“超文本标记语言”。
- 和一般文本的不同的是,一个HTML文件不仅包含文本内容,还包含一些Tag,中文称“标记”。
- 一个HTML文件的后缀名是.htm或者是.html。
- HTML是大小写不敏感的,HTML与html是一样的
- 用文本编辑器就可以编写HTML文件。
二、HTML标签(按功能分New为html5标准)
标签 | 描述 | 属性 |
---|---|---|
基础 | ||
<!DOCTYPE> | 定义文档类型,Document Type(文档类型)的简写,是一种文档类型的声明。 | |
<html> | 定义一个 HTML 文档 | <html manifest="URL"> URL:文档的缓存 manifest 的地址 |
<title> | 为文档定义一个标题 | |
<body> | 定义文档的主体 | 在 HTML 5 中,删除了所有 body 元素的"呈现属性" |
<h1> ~ <h6> | 定义 HTML 标题 | |
<p> | 定义一个段落 | |
<br> | 定义简单的折行 | |
<hr> | 定义水平线 | |
<!--...--> | 定义一个注释 | 注释标签不支持任何属性 |
格式 | ||
<acronym> | HTML5不再支持。 定义只取首字母的缩写 | |
<abbr> | 定义一个缩写 | 支持 HTML 的全局属性,事件属性 |
<address> | 定义联系信息 | 支持 HTML 的全局属性,事件属性 |
<b> | 定义粗体文本 | 支持 HTML 的全局属性,事件属性 |
<bdi>New | 允许设置一段文本,使其脱离其父元素的文本方向设置 | 目前只有 Firefox 和 Chrome 浏览器支持 ;支持 HTML 的全局属性,事件属性 |
<bdo> | 定义文本的方向 | dir="ltr/rtl"从左到右显示文本或从右到左显示文本;支持 HTML 的全局属性,事件属性 |
<big> | HTML5不再支持。 定义大号文本 | |
<blockquote> | 定义块引用 | cite="URL"规定引用的来源;支持 HTML 的全局属性,事件属性 |
<center> | HTML5不再支持。 HTML 4.01 已废弃。定义居中文本 | |
<cite> | 定义引用(citation) | <cite> 标签中的文本将会以斜体显示;支持 HTML 的全局属性,事件属性 |
<code> | 定义计算机代码文本 | <code> 将文本变成等宽字体以及提示这段文本是源程序代码;支持 HTML 的全局属性,事件属性 |
<del> | 定义被删除文本 | cite="URL",datetime="YYYY-MM-DDThh:mm:ssTZD"解释了文本被删除的原因的文档的 URL,时间;支持 HTML 的全局属性,事件属性 |
<dfn> | 定义定义项目 | 用来定义特殊术语或短语;支持 HTML 的全局属性,事件属性 |
<em> | 定义强调文本 | 支持 HTML 的全局属性,事件属性 |
<font> | HTML5不再支持。 HTML 4.01 已废弃。 定义文本的字体、尺寸和颜色 | |
<i> | 定义斜体文本 | 支持 HTML 的全局属性,事件属性 |
<ins> | 定义被插入文本 | <ins> 标签通常是文档中更新和修正的部分;cite="URL",datetime="YYYY-MM-DDThh:mm:ssTZD"解释了文本被插入的原因的文档的 URL,时间;支持 HTML 的全局属性,事件属性 |
<kbd> | 定义键盘文本 | 不推荐使用 |
<mark>New | 定义带有记号的文本 | 支持 HTML 的全局属性,事件属性 |
<meter>New | 定义度量衡。仅用于已知最大和最小值的度量。 | IE不支持 |
<pre> | 定义预格式文本 | <pre> 元素是块级元素,只能包含文本或行内元素,常见应用就是用来表示计算机的源代码与 <code> 标签结合起来使用 |
<progress>New | 定义运行中的任务进度(进程) | max="number",value="number";规定需要完成的值,当前值;支持 HTML 的全局属性,事件属性 |
<q> | 定义短的引用。 | 浏览器经常会在这种引用的周围插入引号,cite="URL"规定引用的源 ;支持 HTML 的全局属性,事件属性 |
<rp>New | 定义不支持 ruby 元素的浏览器所显示的内容 | <rp> 标签在 ruby 注释中使用,以定义不支持 ruby 元素的浏览器所显示的内容;支持 HTML 的全局属性,事件属性 |
<rt>New | 定义字符(中文注音或字符)的解释或发音 | <rt> 标签与 <ruby> 和 <rp> 标签一起使用;支持 HTML 的全局属性,事件属性 |
<ruby>New | 定义 ruby 注释(中文注音或字符) | <ruby> 标签与 <rt>和 <rp> 标签一起使用;支持 HTML 的全局属性,事件属性 |
<s> | 定义加删除线的文本 | 支持 HTML 的全局属性,事件属性 |
<samp> | 定义计算机代码样本 | 支持 HTML 的全局属性,事件属性 |
<small> | 定义小号文本 | 支持 HTML 的全局属性,事件属性 |
<strike> | HTML5不再支持, 定义加删除线的文本 | |
<strong> | 定义语气更为强烈的强调文本 | 支持 HTML 的全局属性,事件属性 |
<sub> | 定义下标文本 | 下标文本能用来表示化学公式,比如 H2O,支持 HTML 的全局属性,事件属性 |
<sup> | 定义上标文本 | 上标文本能用来添加脚注,比如 WWW[1],支持 HTML 的全局属性,事件属性 |
<time>New | 定义一个日期/时间 | datetime="datetime",规定日期/时间。另一种方式,则是由元素的内容给定日期/时间;支持 HTML 的全局属性,事件属性 |
<tt> | HTML5不再支持。 定义打字机文本 | |
<u> | 定义下划线文本 | 不建议使用 |
<var> | 定义文本的变量部分 | 支持 HTML 的全局属性,事件属性 |
<wbr>New | 规定在文本中的何处适合添加换行符 | IE不支持 |
表单 | ||
<form> | 定义一个 HTML 表单,用于用户输入 | accept-charset="character_set"字符集,action="URL"发送地址,autocomplete="on/off"是否启用自动完成,enctype="application/x-www-form-urlencoded;multipart/form-data;text/plain"表单,文件上传,纯文本;method="get/post"发送HTTP 方法;name="text"表单名字;novalidate="novalidate"不进行表单验证; |
<input> | 定义一个输入控件 | type="button /checkbox /color /date /datetime /datetime-local /file /hidden /image /month /number /password /radio /range /reset /search /submit /tel /text /time /url /week" |
<textarea> | 定义多行的文本输入控件 | autofocus文本区域自动获得焦点,cols="number"文本域内可见的列数,disabled禁用文本区域,maxheight="number"允许最大的字符数,placeholder提示,readonly只可读,required必填,rows文本域内可见的行数,wrap="soft/hard"文本提交数据是否换行 |
<button> | 定义按钮。 | type="button /reset /submit " |
<select> | 定义选择列表(下拉列表) | multiple可以多个选项,required必选,size="number"下拉列表可见选项 |
<optgroup> | 定义选择列表中相关选项的组合 | disabled禁用该选项组,label="text"选项组描述 |
<option> | 定义选择列表中的选项 | selected选项(在首次显示在列表中时)表现为选中状态,value发往服务器的选项值 |
<label> | 定义 input 元素的标注 | for="element_id"label 与哪个表单元素绑定 |
<fieldset> | 定义围绕表单中元素的边框 | disabled相关表单元素应该被禁用 |
<legend> | 定义 fieldset 元素的标题 | <legend> 元素为 <fieldset>元素定义标题 |
<datalist>New | 规定了 input 元素可能的选项列表 | <datalist> 标签被用来在为 <input> 元素提供"自动完成"的特性 |
<keygen>New | 规定用于表单的密钥对生成器字段 | keytype="rsa /dsa /ec"定义密钥的安全算法 |
<output>New | 定义一个计算的结果 | IE不支持 |
框架 | ||
<frame> | HTML5不再支持。 定义框架集的窗口或框架 | |
<frameset> | HTML5不再支持。定义框架集。 | |
<noframes> | HTML5不再支持。 定义针对不支持框架的用户的替代内容 | |
<iframe> | 定义内联框架 | height/width="pixels",src="URL" |
图像 | ||
<img> | 定义图像 | alt="text"图像替代文本,crossorigin="anonymous/use-credentials"设置图像的跨域属性,height/width="pixels",ismap服务器端图像映射,usemap="#mapname"将图像定义为客户器端图像映射 |
<map> | 定义图像映射 | name="mapname"为 image-map 规定的名称 |
<area> | 定义图像地图内部的区域 | alt="text"图像替代文本,coords="coordinates"规定区域的坐标,href="URL" |
<canvas>New | 通过脚本(通常是 JavaScript)来绘制图形(比如图表和其他图像) | height/width="pixels" |
<figcaption>New | 定义一个 caption for a <figure> element | 标签用于表示与图形或图例有关联的标题,通常用来定义 <figure> 元素的标题 |
<figure>New | figure 标签用于对元素进行组合 | |
Audio/Video | ||
<audio>New | 定义声音,比如音乐或其他音频流。 | autoplay音频在就绪后马上播放,controls向用户显示音频控件,loop每当音频结束时重新开始播放,muted音频输出为静音,preload="auto/metadata/none"当网页加载时,音频是否默认被加载以及如何被加载,src="URL"音频文件的 URL |
<source>New | 定义media元素 (<video> 和 <audio>)的媒体资源 | src="URL"媒体文件的 URL,type="MIME_type"媒体资源的 MIME 类型(常见类型:video/ogg|video/mp4|video/webm|audio/ogg|audio/mpeg) |
<track>New | 为媒体(<video> 和 <audio>)元素定义外部文本轨道 | IE 10、Opera 和 Chrome 浏览器支持 <track> 标签 |
<video>New | 定义一个音频或者视频 | autoplay视频在就绪后马上播放,controls向用户显示音频控件,loop每当视频结束时重新开始播放,muted音频输出为静音,preload="auto/metadata/none"当网页加载时,视频是否默认被加载以及如何被加载,src="URL"视频文件的 URL,poster="URL",视频正在下载时显示的图像直到用户点击播放按钮, height/width="pixels" |
链接 | ||
<a> | 定义一个链接 | download="ilename"指定下载链接,href="URL"规定链接的目标 URL,hreflang="language_code",media="media_query"规定目标 URL 的媒介类型。默认值:all,rel="alternate/author/bookmark/help/license/next/nofollow/noreferrer/prefetch/prev/search/tag"规定当前文档与目标 URL 之间的关系,target="_blank/_parent/_self/_top/framename"规定在何处打开目标 URL,在新窗口/默认/在父框架集中/在整个窗口中/在指定的框架;type="MIME_type" |
<link> | 定义文档与外部资源的关系。 | href="URL"定义被链接文档的位置 |
<nav>New | 定义导航链接 | 支持 HTML 的全局属性,事件属性 |
列表 | ||
<ul> | 定义一个无序列表 | 支持 HTML 的全局属性,事件属性 |
<ol> | 定义一个有序列表 | reversed指定列表倒序(9,8,7...),type="1/A/a/I/i"规定列表的类型 |
<li> | 定义一个列表项 | 支持 HTML 的全局属性,事件属性 |
<dir> | HTML5不再支持。 HTML 4.01 已废弃。 定义目录列表 | |
<dl> | 定义一个定义列表 | 支持 HTML 的全局属性,事件属性 |
<dt> | 定义一个定义定义列表中的项目 | 支持 HTML 的全局属性,事件属性 |
<dd> | 定义定义列表中项目的描述 | 支持 HTML 的全局属性,事件属性 |
<menu> | 定义菜单列表 | 目前主流浏览器不支持 <menu> 标签 |
<command>New | 定义用户可能调用的命令(比如单选按钮、复选框或按钮) | 目前主流浏览器并不支持 <command> 标签 |
表格 | ||
<table> | 定义一个表格 | border="1/ "表格单元是否拥有边框,支持 HTML 的全局属性,事件属性 |
<caption> | 定义表格标题 | 支持 HTML 的全局属性,事件属性 |
<th> | 定义表格中的表头单元格 | rowspan="number"规定表头单元格可横跨的行数colspan="number"规定表头单元格可横跨的列数,headers="header_id"规定与单元格相关联的一个或多个表头单元格,scope="col|row|colgroup|rowgroup"规定表头单元格是否是行、列、行组或列组的头部 |
<tr> | 定义表格中的行 | 支持 HTML 的全局属性,事件属性 |
<td> | 定义表格中的单元 | rowspan="number"规定表头单元格可横跨的行数colspan="number"规定表头单元格可横跨的列数,headers="header_id"规定与单元格相关联的一个或多个表头单元格 |
<thead> | 定义表格中的表头内容 | 支持 HTML 的全局属性,事件属性 |
<tbody> | 定义表格中的主体内容 | 支持 HTML 的全局属性,事件属性 |
<tfoot> | 定义表格中的表注内容(脚注) | 支持 HTML 的全局属性,事件属性 |
<col> | 定义表格中一个或多个列的属性值 | span="number"规定 <col> 元素应该横跨的列数,<col> 标签规定了 <colgroup> 元素内部的每一列的列属性,通过使用 <col> 标签,可以向整个列应用样式 |
<colgroup> | 定义表格中供格式化的列组 | span="number"规定 <col> 元素应该横跨的列数 |
样式/节 | ||
<style> | 定义文档的样式信息 | media="media_query"为样式表规定不同的媒体类型,scoped="scoped"如果使用该属性,则样式仅仅应用到 style 元素的父元素及其子元素,type="text/css"规定样式表的 MIME 类型 |
<div> | 定义文档中的节 | 支持 HTML 的全局属性,事件属性 |
<span> | 定义文档中的节 | 支持 HTML 的全局属性,事件属性 |
<header>New | 定义一个文档头部部分 | 支持 HTML 的全局属性,事件属性 |
<footer>New | 定义一个文档底部 | 支持 HTML 的全局属性,事件属性 |
<section>New | 定义了文档的某个区域 | 支持 HTML 的全局属性,事件属性 |
<article>New | 定义一个文章内容 | 支持 HTML 的全局属性,事件属性 |
<aside>New | 定义其所处内容之外的内容 | 支持 HTML 的全局属性,事件属性 |
<details>New | 定义了用户可见的或者隐藏的需求的补充细节 | 只有 Chrome 和 Safari 6 支持 <details> 标签 |
<dialog>New | 定义一个对话框或者窗口 | 只有 Chrome 和 Safari 6 支持 <dialog> 标签 |
<summary>New | 定义一个可见的标题。 当用户点击标题时会显示出详细信息 | 只有 Chrome 和 Safari 6 支持 <summary> 标签 |
元信息 | ||
<head> | 定义关于文档的信息 | <head> 标签支持 HTML 的全局属性 |
<meta> | 定义关于 HTML 文档的元信息 | charset="character_set"定义文档的字符编码,content="text"定义与 http-equiv 或 name 属性相关的元信息,http-equiv="content-type|default-style|refresh"把 content 属性关联到 HTTP 头部,name="application-name丨author丨description丨generator丨keywords"把 content 属性关联到一个名称 |
<base> | 定义页面中所有链接的默认地址或默认目标 | href="URL"规定页面中所有相对链接的基准 URL,target="_blank|_parent|_self|_top|framename"规定页面中所有的超链接和表单在何处打开。该属性会被每个链接中的 target 属性覆盖 |
<basefont> | HTML5不再支持。 HTML 4.01 已废弃。定义页面中文本的默认字体、颜色或尺寸 | |
程序 | ||
<script> | 定义客户端脚本 | async规定异步执行脚本(仅适用于外部脚本),charset规定在脚本中使用的字符编码(仅适用于外部脚本),defer规定当页面已完成解析后,执行脚本(仅适用于外部脚本),src="URL"规定外部脚本的 URL,type="MIME-type"规定脚本的 MIME 类型 |
<noscript> | 定义针对不支持客户端脚本的用户的替代内容 | |
<applet> | HTML5不再支持。 HTML 4.01 已废弃。 定义嵌入的 applet | |
<embed>New | 定义了一个容器,用来嵌入外部应用或者互动程序(插件) | height|width = "pixels",规定嵌入内容的高度/宽度,src="URL"规定被嵌入内容的 URL,type="MIME-type"规定嵌入内容的 MIME 类型 |
<object> | 定义嵌入的对象 | |
<param> | 定义对象的参数 |