1. W3C 简介
万维网联盟的英文全称为World Wide Web Consortium,简称W3C,又称W3C理事会,是万维网的主要国际标准组织。
为解决web应用中不同平台、技术和开发者带来的不同兼容问题,保障Web信息的顺利和完整沟通,万维网联盟指定了一系列标准并督促Web应用开发者和内容提供者遵循这些标准。标准的内容包括使用语言的规范,开发中使用的导则和解释引擎的行为等等。W3C也制定了包括XML和CSS等的众多影响深远的标准规则。这些标准似乎并非强制而是推荐标准。
2. MDN 简介
MDN Web Docs是一个集中所有Mozilla基金会产品和网络技术开发文件的网站。最初DevEdge的网站搜集了网络技术及其他以[Netscape]产品所实现的相关数据,然而随着美国在线收购Netscape之后,DevEdge网站也宣布关闭。
2005年2月,Mozilla基金会向美国在线获取DevEdge发布的内容,同时将DevEdge内容搬移到mozilla.org
3. HTML 所有标签列表(查 MDN)
根元素:
- HTML <html> 元素 表示一个HTML文档的根(顶级元素),所所以它也被称为根元素。其他所有其他元素必须是此元素的后代。
文档元数据:
- HTML <base> 元素 指定用于一个文档中包含的所有相关URL的基本URL。一份中只能有一个<base>元素。
- HTML head 元素 规定文档相关的通用信息(元数据),包括文档的标题,文档的样式和脚本的链接(定义)等。
- HTML 中<link>元素指定了外部资源与当前文档的关系. 这个元素的使用方法包括为导航定义关系框架.这个元素经常用来链接css文件。
- HTML <meta>元素表示那些不能由其他HTML元相关元素(<base> <link> <script> <style>或<title>)之一表示的任何元数据信息。
- HTML的<style>元素包含了文档的样式化信息或者文档的一部分。指定的样式化星系包含的该元素内,通常是CSS的格式。
- HTML <title> 元素 定义文档的标题,显示在浏览器的标题栏或标签页上。它只可以包含文本,若是包含有标签,则包含的任何标签都不会被解释。
内容分区- HTML 的<address>元素可以让作者为它最近的元素<article>或者<body>
祖先元素提供联系信息。在后一种情况下,它应用于整个文档。- <article>元素表示文档、页面、应用或网站中的独立结构,其意在成为可独立分配的或可复用的结构,如在发布中,它可能是论坛帖子、杂志或新闻文章、博客、用户提交的评论、交互式组件,或者其他独立的内容项目。
- <aside> 元素表示一个和其余页面内容几乎无关的部分,被认为是独立于该内容的一部分并且可以被单独的拆分出来而不会使整体受影响。其通常表现为侧边栏或者嵌入内容。他们通常包含在工具条,例如来自词汇表的定义。也可能有其他类型的信息,例如相关的广告、笔者的传记、web 应用程序、个人资料信息,或在博客上的相关链接。
- HTML <footer> 元素**表示最近一个章节内容或者根节点(sectioning root )元素的页脚。一个页脚通常包含该章节作者、版权数据或者与文档相关的链接等信息。
- 段落:<h1-h6>
- <header>元素表示一组引导性的帮助,可能包含标题元素,也可以包含其他元素,像logo、分节头部、搜索表单等。
- HTML <hgroup>代表一个段的标题。它规定了在文档轮廓里的单一标题是它所属的隐式或显式部分的标题。
- HTML导航栏 (<nav>) 描绘一个含有多个超链接的区域,这个区域包含转到其他页面,或者页面内部其他部分的链接列表。
- HTML Section 元素表示文档中的一个区域(或节),比如,内容中的一个专题组,一般来说会有包含一个标题(heading)。一般通过是否包含一个标题 作为子节点 来 辨识每一个<section>。
文本内容
- <blockquote>元素代表其中的文字是引用内容。通常在渲染时,这部分的内容会有一定的缩进。若引文来源于网络,则可以将原内容的出处URL地址设置到cite特性上,若要以文本的形式告知读者引文的出处时,可以通过<cite>元素。
- <dd> 元素(HTML 描述元素)用来指明一个描述列表 ( <dl>) 元素中一个术语的描述。这个元素只能作为描述列表元素的子元素出现,并且必须跟着一个<dt> 元素。
- <div>元素(或 HTML 文档分区元素) 是一个通用型的流内容容器,它在语义上不代表任何特定类型的内容,它可以被用来对其它元素进行分组,一般用于样式化相关的需求(使用 class 或 id 特性) 或者对具有相同特性的一组元素进行分组 (比如<article>或 <nav>) 。
- <dl>元素是一个包含术语定义以及描述的列表,通常用于展示词汇表或者元数据 (键-值对列表)。
- <dt>元素用于在一个定义列表中声明一个术语。该元素仅能作为 <dl>的子元素出现。通常在该元素后面会跟着<dd>元素,然而,多个连续出现的<dt>元素都将由出现在它们后面的第一个<dd>元素定义。
- <figcaption>元素是与其相关联的图片的说明/标题,用于描述其父节点<figure>元素里的其他数据。这意味着 <figcaption>在<figure>块里是第一个或最后一个。同时HTML Figcaption元素是可选的;如果没有该元素,这个父节点的图片只是会没有说明/标题。
- <figure>元素代表一段独立的内容。这个标签经常是在主文中引用的图片、插图、表格、代码段等。
- <hr >元素表示段落级元素之间的主题转换(例如,一个故事中的场景的改变,或一个章节的主题的改变)。在HTML的早期版本中,它是一个水平线。现在它仍能在可视化浏览器中表现为水平线,但目前被定义为语义上的,而不是表现层面上。
- <li>元素用于表示列表里的条目。它必须被包含在一个父元素里:有序的<ol>或无序的<ul>列表。在菜单或者无顺序的列表里,列表条目通常用点排列显示。在有顺序的列表里,列表条目通常是在左边有按升序排列计数的显示,例如数字或者字母。
- <main>元素呈现了文档<body>或应用的主体部分。
- <ol> 元素表示多个有序列表项,通常渲染为有带编号的列表。
- <p>元素p>元素(或者说 HTML 段落元素)表示文本的一个段落。该元素通常表现为一整块与相邻文本分离的文本,或以垂直的空白隔离或以首行缩进。是块级元素。
- <pre>元素表示预定义格式文本。
- <ul>元素代表多项的无序列表,即无数值排序项的集合,且它们在列表中的顺序是没有意义的。
内联文本语义
- <a> 元素 (或锚元素) 创建一个到其他网页,文件,同一页面内的位置,电子邮件地址或任何其他URL的超链接。
- <abbr>元素代表缩写,并可选择提供一个完整的描述。、
- <b>元素表示相对于普通文本字体上的区别,但不表示任何特殊的强调或者关联。它通常用在摘要中的关键字、审查中的产品名称或者其他需要显示为加粗的文字区域。它的另一个使用例子是用来标记一篇文章中每一段的引言。
- <bdi>元素会隔离可能以不同方向进行格式化的外部文本。
- <bdo>元素用于覆盖当前文本的朝向,它使得字符的排列方式被给定的方向覆盖。
表示换行。- <cite>表示一个作品的引用。
- <code>元素呈现一段计算机代码. 默认情况下, 它以浏览器的默认等宽字体显示。
- <data>元素 将一个指定内容和机器可读的翻译联系在一起。但如果内容是与 time 或者 date 相关的,一定要使用<time>。
- <dfn>元素表示术语的一个定义。
- <em>元素标记出需要用户着重阅读的内容,可以嵌套,嵌套层次越深表示包含的内容越重要。
- <i>元素用于表现因某些原因需要区分普通文本的一系列文本。
- <kbd>元素用于表示用户输入,它将产生一个行内元素,以浏览器的默认monospace字体显示。
- <mark>标签代表突出显示的文字.
- <q>标签表示一个封闭的并且是短的行内引用的文本。
- <rp>元素用于为那些不能使用<ruby>元素展示ruby朱姐的浏览器。
- <span>元素是短语内容的通用行内容器,并没有任何特殊语义。可以使用它来编组元素以达到某种样式意图(通过使用类或者Id属性).
- <strong>元素表示文本十分重要,一般用粗体显示。
- 元素定义了一个文本区域,出于排版的原因,与主要的文本相比,应该展示得更低并且更小。
- <u>元素使文本在其内容的基线下的一行呈现下划线。
- <var>元素表示变量的名称,或者由用户提供的值。
图片和多媒体
- <area>元素在图片上定义一个热点区域。
- <audio>元素元素用于在文档中表示音频内容。
- <video>元素用于在HTML或者XHTML文档中嵌入视频内容。
- <img>元素代表文档中的一个图像。
内嵌内容
- <embed>元素用于表示一个外部应用或交互式内容的集合点,换句话说,就是一个插件。
- <object>元素表示引入一个外部资源,这个资源可能是一张图片,一个嵌入的浏览上下文,亦或是一个插件所使用的资源。
- <param>元素定义了<object>的参数。
脚本
- <canvas>元素可被用来通过脚本(通常是JavaScript)绘制图形。比如,它可以被用来绘制图形,制作图片集合,甚至用来实现动画效果。你可以(也应该)在元素标签内写入可提供替代的的代码内容,这些内容将会在在旧的、不支持<canvas>元素的浏览器或是禁用了JavaScript的浏览器内渲染并展现。
- <noscript>元素,如果页面上的脚本类型不受支持或者当前在浏览器中关闭了脚本,则HTML <noscript>元素定义要插入的html部分。。
- <script>元素用于嵌入或引用可执行脚本。
表单
- <button>元素表示一个可点击的按钮。。
- <datalist>元素包含了一组<option>元素,这些元素表示其它表单控件可选值。
- <form>元素表示了文档中的一个区域,这个区域包含有交互控制元件,用来向web服务器提交信息。
- <input>元素用于为基于Web的表单创建交互式控件,以便接受来自用户的数据。
- <label>元素表示用户界面中项目的标题。
- <legend>元素代表一个用于表示它的父元素<fieldset>的内容的标题。
- <meter>元素用来显示已知范围的标量值或者分数值。
- <select>元素元素是一种表单控件,可创建选项菜单。。
- <textarea>元素表示一个多行纯文本编辑控件。
- <output>标签定义一个用户的操作或者计算的结果。
- <option>元素option> 可以在弹出窗口和 html 文档中的其他项目列表中表示菜单项。
4. 什么是空标签(查 MDN、博客)
没有HTML内容的标签就是空标签,空标签只需要写一个开始标签。空元素在开始标签中进行关闭(以开始标签的结束而结束,闭标签无效)
<br >
<hr >
<img>
<area>
<base>
<col>
<command>
<embed>
<meta>
<link>
<source>
<track>
<param>
<wbr>
5. 什么是可替换标签(查 MDN、博客)
浏览器根据其标签的元素及属性来判断显示具体的内容。<img> <input> <textarea> <select> <object> <iframe>都是替换元素,这些元素都没有实际的内容。
某些元素只在一些特殊情况下表现为可替换元素,例如<audio> <canvas>,通过CSS content属性来插入的对象被称作匿名可替换元素。