HTML文档类型
在HMTL5中页面的最顶端代码就是:
<!DOCTYPE html>
为何要如此定义、书写呢?
首先引入一个概念:文档类型,英译为:Document type,缩写成:doctype.
文档类型有何作用呢?
在计算机世界中存在许多不同文件类型或称为文件扩展名,比如.txt,.log,.doc,.wps,.xml….。计算机根据不同的文档类型来选择相对应的软件对文件进行打开,修改等操作!同样Web世界中存在许多不同的文档,但是Web网页是使用浏览器来打开、渲染、显示,如何才能让浏览器正确地显示文档呢,这就需要了解文档的类型!
HTML有多个不同的版本,只有准确的在页面中指定确切的HTML版本,浏览器才能正确无误的显示HTML页面。这就是<!DOCTYPE>的用处。
<!DOCTYPE> 不是HTML标签,它只是为浏览器提供一项声明,因此它没有闭合/结束标签!
HTML文档类型的种类:
由于历史原因,HTML有着多个版本,目前使用比较广泛的仍然是:
1999制定的HTML 4.01, 2000年制定的XHTML 1.0,2012制定的HTML5。不过需要特别说明的是:HTML5目前只是初稿!
HTML 4.01规定了三种文档类型:Strict, Transitional, 以及Frameset. 中译为:严格版本,过渡版本,以及基于框架的版本!
XHTML 1.0同样也规定的三种文档类型:Strict, Transitional, 以及Frameset. 中译为:严格版本,过渡版本,以及基于框架的版本!
它们名称相同,但是声明的方式,有略微区别!
DOCTYPE的语法: HTML 顶级元素 可用性 “注册组织//类型 标签//定义语言”"URL” .
以下面这个 <!DOCTYPE> 标签为例:
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
根元素是 html,
注册组织:W3C,
类型标签:XHTML 1.0 Strict,
定义语言:EN.
URL:http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd。
它在公共标识符被定义为 "-//W3C//DTD XHTML 1.0 Strict//EN" 的 DTD 中进行了定义。浏览器将明白如何寻找匹配此公共标识符的 DTD。如果找不到,浏览器将使用公共标识符后面的 URL 作为寻找 DTD 的位置。
始终要明白:URL只是替补!
Strict:
HTML 4.01:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "
http://www.w3.org/TR/html4/strict.dtd"> XHTML 1.0:
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
Transitional:
HTML 4.01:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"> XHTML 1.0:
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Frameset:
HTML 4.01:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "
http://www.w3.org/TR/html4/frameset.dtd"> XHTML 1.0:
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.0与HTML 4.01文档类型声明复杂并且难理解,但是在HTML5中,就简单许多了!!!
注意:虽然规定有三种文档类型,但是在每一张网页中只能同时声明一种规范!
文档类型,在使用集成开发工具时,基本都会自动添加。有时候使用记事本编写HTML代码时,往往会忘记声明文档类型,如果是复杂的页画那么在浏览器显示时就很容易会错排!
HTML文档类型的更多相关文章
- Doctype文档类型、作用及触发方式
Doctype文档类型 1) 该标签可声明三种 DTD 类型,分别表示严格版本.过渡版本以及基于框架的 HTML 文档. 2) HTML 4.01 规定了三种文档类型:Strict.Transit ...
- Umbraco文档类型定义多个template
利用这个可以同时写PC端和手机端的网站, 在Template中,建立手机端的模板: 在文档类型中,同时选择两个模板,在浏览的时候在URL后加上Template的名称 + .aspx 就可以浏览到你写的 ...
- DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义
DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义 今天看到一篇CSS应用的一个友好搜索,我按网页上的代码复制.粘贴后预览时总达不到效果,而直接拷贝他的实例却能达到效果, ...
- 彻底解决android读取中文txt的乱码(自动判断文档类型并转码
原文:http://blog.csdn.net/handsomedylan/article/details/6138400 public String convertCodeAndGetText(St ...
- HTML&CSS基础学习笔记1.4-定义文档类型
Web 世界中存在许多不同的文档.只有了解文档的类型,浏览器才能正确地显示文档. HTML 也有多个不同的版本,只有完全明白页面中使用的确切 HTML 版本,浏览器才能完全正确地显示出 HTML 页面 ...
- doctype(文档类型)的作用是什么?转载
<!DOCTYPE> 声明位于文档中的最前面的位置,处于 <html> 标签之前.此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范. Document Type ...
- HTML文档类型DTD与浏览器怪异模式
虽然在兼容IE6时候经常会注意到两个模式的区别,但是系统的理解起来,还没有认真总结过.看了一些网上的资料.结合自己的理解汇总了一下,放在这里备忘并分享给大家. 浏览器从服务端获取网页后会根据文档的DO ...
- 有效的XML: DTD(文档类型定义)介绍(转)
文档类型定义和命名空间 有效(Valid)的XML文档: 首先,XML文档是个格式正规的(Well-formed)XML文档:(见格式正规的XML:语法 属性 实体 处理指令 样式单 CDATA节). ...
- !DOCTYPE html文档类型声明简写 HTML5 DOCTYPE缩写
html5之!DOCTYPE html文档类型声明简写,在HTML5中DOCTYPE简写非常重要. 一.概述 - TOP 让CSS样式表生效,DOCTYPE声明是必须的,以前TABLE布局的网 ...
随机推荐
- 采纳ajax提交POST样本数据
问题叙述性说明 我们会form该input和checkbox提交给异步数据phpserver.处理后的回. 提交之后显示的位置: 难点分析 採用from表单的onsubmit属性阻止表单的提交 < ...
- vim_编码配置文件_utf8乱码解决
1:简化步奏 调整 :vimrc的脚本配置 编辑~/.vimrc文件,(没有的话新建个)加上如下几行: set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb23 ...
- 求解决!!!SystemVerilog于ModelSim在编译和执行
我们正在学习SV流程,样品执行书.. 功能:函数返回数组. Code1: /*书上提供的样例.存在错误,不可执行 function void init(ref int f[5], int start) ...
- 房间计费系统改造E-R图纸设计
简单的学习过程: 这几天忙得太混乱了,用了近一个星期才设计好.我在这段时间遇到的困难,就积极找师哥师姐指点迷津,如今多少总算是有些拿得出手的成果. 学习成果: Entity Relations ...
- C#快递跟踪(基于快递100深度定制)
本文主要介绍快递跟踪的相关信息.如根据快递单号预测所属快递公司,判断快递是否已被签收,以及改良官方model后可在不用申请授权的情况下实现json,html,xml及text等多种格式以及单行多行,降 ...
- 【转】Appium 服务器端从启动到case完成的活动分析
原文地址:http://blog.csdn.net/zhubaitian/article/details/39474151 此文的目的主要是通过分析Appium Server打印出来的log,加深对A ...
- C#面向对象复习概要
1.面向对象:我们将具有统一行为和属性的对象抽象划分为类,通过类去创建对象.这种编程思想叫做面向对象的编程思想. 2.属性:对象具有的属性 using System; using System.Col ...
- ORA-00932: inconsistent datatypes: expected - got CLOB
从最近的数据库10.2.0.3升级到10.2.0.5之后,一些对象可以不被编译.查看这些对象的主列表不严格写入之前现在SQL这些语法结果package无法成功编译,诸如select查询列中不能使用混淆 ...
- EF 事物
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.D ...
- 如何将经纬度利用Google Map API显示C# VS2005 Sample Code
原文 如何将经纬度利用Google Map API显示C# VS2005 Sample Code 日前写了一篇如何用GPS抓取目前所在,并回传至资料库储存,这篇将会利用这些回报的资料,将它显示在地图上 ...