•
HTML 4.01 strict
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
•
HTML 4.01 Transitional
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
•
HTML 4.01 Frameset
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
•
而最新HTML5 推出更加简洁的书写,它向前向后兼容,推荐使用。
<!doctype html>
HTML里的doctype有两个主要目的。
•对文档进行有效性验证。
它告诉用户代理和校验器这个文档是按照什么DTD写的。这个动作是被动的,每次页面加载时,浏览器并不会下载DTD并检查合法性,只有当手动校验页面时才启用。
•决定浏览器的呈现模式
对于实际操作,通知浏览器读取文档时用哪种解析算法。如果没有写,则浏览器则根据自身的规则对代码进行解析,可能会严重影响html排版布局。浏览器有三种方式解析HTML文档。
◦非怪异(标准)模式
◦怪异模式
◦部分怪异(近乎标准)模式
关于IE浏览器的文档模式,浏览器模式,严格模式,怪异模式,DOCTYPE标签,可详细阅读模式?标准!,以及盒子模型。
charset
声明文档使用的字符编码,
复制代码
<meta charset=’utf-8′>
html5之前网页中会这样写:
复制代码
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″>
这两个是等效的,具体可移步阅读:http://stackoverflow.com/questions/4696499/meta-charset-utf-8-vs-meta-http-equiv-content-type,所以建议使用较短的,易于记忆。
lang属性
简体中文
<html lang="zh-cmn-Hans"> <!– 更加标准的 lang 属性写法 <http://zhi.hu/XyIa> –>
繁体中文
<html lang="zh-cmn-Hant"> <!– 更加标准的 lang 属性写法 <http://zhi.hu/XyIa> –>
很少情况才需要加地区代码,通常是为了强调不同地区汉语使用差异,例如:
复制代码
<p lang=”zh-cmn-Hans”>
<strong lang=”zh-cmn-Hans-CN”>菠萝</strong>和<strong lang=”zh-cmn-Hant-TW”>鳳梨</strong>其实是同一种水果。只是大陆和台湾称谓不同,且新加坡、马来西亚一带的称谓也是不同的,称之为<strong lang=”zh-cmn-Hans-SG”>黄梨</strong>。
</p>
具体相关请移步http://zhi.hu/XyIa









