<!DOCTYPE>标签
所有浏览器都支持<!DOCTYPE>声明
定义和用法
<!DOCTYPE>声明必须是HTML文档的第一行,位于<html>标签之前。
<!DOCTYPE>声明不是HTML标签;它是指web浏览器关于页面使用哪个HTML版本进行编写的指令。
注意:请始终向HTML文档添加<!DOCTYPE>声明,这样浏览器才能获知文档类型。
ps.<!DOCTYPE>声明没有结束标签
pss.<!DOCTYPE>声明对大小写不敏感
HTML 4.01与HTML 5之间的差异
--在HTML 4.01中,<!DOCTYPE>声明引用DTD,因为HTML 4.01基于SGML。DTD规定了标记语言的规则,这样浏览器才能正确的显示内容
--HTML 5不基于SGML,所以不需要引用DTD
常用的DOCTYPE声明
<!-- HTML 5 -->
<!DOCTYPE html>
<!-- HTML 4.01 Strict -->
<!-- 该DTD包含所有HTML元素和属性,但不包括展示性的和弃用的元素(比如font)。不允许框架集(Framesets)。 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!-- HTML 4.01 Transitional -->
<!-- 该DTD包含所有HTML元素和属性。包括展示性的和弃用的元素(比如font)。不允许框架集(Framesets)。 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<!-- HTML 4.01 Frameset -->
<!-- 该DTD等同于HTML 4.01 Transitional,但允许框架集内容。 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<!-- XHTML 1.0 Strict -->
<!-- 该 DTD 包含所有 HTML 元素和属性,但不包括展示性的和弃用的元素(比如 font)。不允许框架集(Framesets)。必须以格式正确的 XML 来编写标记。 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!-- XHTML 1.0 Transitional -->
<!-- 该 DTD 包含所有 HTML 元素和属性,包括展示性的和弃用的元素(比如 font)。不允许框架集(Framesets)。必须以格式正确的 XML 来编写标记。 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- XHTML 1.0 Frameset -->
<!-- 该 DTD 等同于 XHTML 1.0 Transitional,但允许框架集内容。 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<!-- XHTML 1.1 -->
<!-- 该 DTD 等同于 XHTML 1.0 Strict,但允许添加模型(例如提供对东亚语系的 ruby 支持)。 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
上面的形如 <!-- 可编辑注释内容 --> 样子的是注释。
注释不会显示在浏览器中。
<html>标签
所有浏览器都支持<html>标签
定义和用法
此元素可告知浏览器自身是一个HTML文档。
<html>和</html>标签限定了文档的开始和结束点,在他们之间是文档的头部和主体。
文档的头部由<head>标签定义,而主体是由<body>标签定义。
ps.即使html元素是文档的根元素,它也不包含doctype元素。doctype元素必须位于html元素之前。
该标签在HTML与XHTML之间没有差异
lang属性
所有浏览器均支持lang属性
定义和用法
lang属性规定元素内容的语言
ps.lang属性在一下标签中无效:<base>、<br>、<frame>、<frameset>、<hr>、<iframe>、<param>和<script>
<!-- 语法 -->
<element lang="language_code">
<!-- 一些例子 -->
<!-- 英文 -->
<html lang="en"></html>
<!-- 简体中文 -->
<html lang="zh"></html>
<!-- 也可以加到其他标签上 -->
<div lang="en"></div>
设置更多语言可参考:http://www.w3school.com.cn/tags/html_ref_language_codes.asp
https://www.zhihu.com/question/20797118?utm_source=weibo&utm_medium=weibo_share&utm_content=share_question&utm_campaign=share_sidebar
https://tools.ietf.org/html/bcp47
该属性的用处可参考:https://www.w3.org/International/questions/qa-lang-why
该属性在HTML与XHTML之间没有差异<head>标签
所有浏览器均支持<head>标签
定义和用法
<head>标签用于定义文档的头部,它是所有头部元素的容器。<head>中的元素可以引用脚本、指定浏览器在哪里找到样式表、提供元素信息等。
元素的头部描述了文档的各种属性和信息,包括文档的标题、在Web中的位置以及和其他文档的关系等等。绝大多数文档头部包含的数据都不会真正作为内容显示给读者。
有这些标签可用于head部分:<base>、<link>、<meta>、<script>、<style>、<title>
<title>定义文档的标题,它是head部分唯一必需的元素
注意:应该吧<head>标签放在文档的开始处,紧跟在<html>后面,并处于<body>标签或<frameset>标签之前
注意:请始终为文档定义标题
该标签在HTML与XHTML之间没有差异
<body>标签
所有主流浏览器均支持<head>标签
定义和用法
--body元素定义文档的主体
--body元素包含文档的所有内容(比如文本、超链接、图像、表格和列表等)
HTML和XHTML之间的差异
在HTML 4.01中,所有body元素的“呈现属性”均不被赞成使用。
在XHTML 1.0 Strict DTD中,所有body元素的“呈现属性”均不被支持。