实例:

<!DOCTYPE html>
<html>
<head>
<title>文档的标题</title>
</head> <body>
文档的内容......
</body> </html>

浏览器支持:

所有浏览器都支持 <!DOCTYPE> 声明。

定义和用法:

<!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前。
<!DOCTYPE> 声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。
在 HTML 4.01 中,<!DOCTYPE> 声明引用 DTD,因为 HTML 4.01 基于 SGML。DTD 规定了标记语言的规则,这样浏览器才能正确地呈现内容。
HTML5 不基于 SGML,所以不需要引用 DTD。
提示:请始终向 HTML 文档添加 <!DOCTYPE> 声明,这样浏览器才能获知文档类型。

HTML 4.01 与 HTML5 之间的差异:

在 HTML 4.01 中有三种 <!DOCTYPE> 声明。在 HTML5 中只有一种:
<!DOCTYPE html>

提示和注释:

注释:<!DOCTYPE> 声明没有结束标签。
提示:<!DOCTYPE> 声明对大小写不敏感。
提示:请使用 W3C 的验证器来检查您是否编写了有效的 HTML / XHTML 文档!

常用的 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//EN" "http://www.w3.org/TR/html4/strict.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">

最新文章

  1. weinre- 调试移动端页面
  2. DrawerLayout 和 NavigationView 的使用
  3. linux系统基础网络配置
  4. Objective-C与C style语言的简单类比
  5. Android 获取地理位置的经度和纬度(zz)
  6. c#读取文本文档实践1-File.ReadAllLines()
  7. Drupal8开发教程:模块开发——创建新页面
  8. webServer xampp的安装及使用
  9. IP地址总结
  10. PHP上传文件大小限制问题 post_max_size对大小的影响及解决方法
  11. netty Getting Started--reference
  12. Js 学习资料
  13. 20151221jqueryUI---日历UI代码备份
  14. 将动态库添加到VC程序中
  15. KB奇遇记(8):好人难做
  16. js 形参和实参---2017-04-11
  17. 【head first python】2.共享你的代码 函数模块
  18. MySQL基础操/下
  19. x264 n-th pass编码时候Stats文件的含义
  20. PhpStorm常用快捷键以及如何连接外部服务器

热门文章

  1. 【Xamarin挖墙脚系列:配置Mac之间的连接问题】
  2. Android用户界面 UI组件--TextView及其子类(五) DigitalClock,AnalogClock,RadioButton,CheckBox,ToggleButton汇总
  3. 【C++ in Qt5】一个简单的通讯录程序,支持文件存取
  4. the private key for is not installed on this mac
  5. 转《本文为腾讯Bugly原创文章 ---全站 HTTPS 来了》
  6. Makefile自动生成头文件依赖
  7. QT更改程序图标
  8. Java---XML的解析(2)-DOM4J解析/Xpath
  9. iphone上click事件不触发的问题解决。
  10. 关于缓存的tips——HTTP权威指南读书心得(十三)