关于XHTML头部声明,什么是DOCTYPE?

xhtml

当我们制作页面的时候,总会在它的源码头部看到一串声明,比如最常见的

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

如果我们把这些代码去掉,会发现页面可能会有比较明显的变化,因为这样造成了有些样式的表现不一样。

这些代码我们称做DOCTYPE声明。DOCTYPE是document type(文档类型)的简写,用来说明你用的XHTML或者HTML是什么版本。DOCTYPE声明必须放在每一个XHTML文档最顶部,在所有代码和标识之上。

其中的DTD(例如上例中的xhtml1-transitional.dtd)叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。

要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。

XHTML 1.0 提供了三种DTD声明可供选择:

过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法)。完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

严格的(Strict):要求严格的DTD,你不能使用任何表现层的标识和属性,例如
。完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

框架的(Frameset):专门针对框架页面设计使用的DTD,如果你的页面中包含有框架,需要采用这种DTD。完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

理想情况当然是严格的DTD,但对于我们大多数刚接触web标准的设计师来说,过渡的DTD(XHTML 1.0 Transitional)是目前理想选择。因为这种DTD还允许我们使用表现层的标识、元素和属性,也比较容易通过W3C的代码校验。

注:上面说的"表现层的标识、属性"是指那些纯粹用来控制表现的tag标签,例如用于排版的表格、背景颜色标识等,一些内部样式。在XHTML中标识是用来表示结构的,而不是用来实现表现形式,我们过渡的目的是最终实现数据和表现相分离。

结构和表现分离。页面里的xhtml标签只是单纯用来表示结构,它的表现形式由css样式控制。不知不觉又谈到标准化的结构表现分离。上面说的头部声明只是最基础的知识,也是页面的基础,是你开始用xhtml构建你的页面的第一步。

时间: 2024-07-29 14:35:37

关于XHTML头部声明,什么是DOCTYPE?的相关文章

标签声明-&amp;amp;lt;!DOCTYPE&amp;amp;gt;声明提示错误?

问题描述 <!DOCTYPE>声明提示错误? svg文件开头的一行<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">出现红叉的错误,提示"multiple markers at this line -missing space -white spaces are required between publicid and systemid",请教是什么原因? 解决方案 <!DOCTYPE

xml 文件的头部声明

<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop

网页头部声明lang=”zh-cn”、lang=“zh”、lang=“zh-cmn-Hans”区别

  单一的 zh 和 zh-CN 均属于废弃用法. 问题主要在于,zh 现在不是语言code了,而是macrolang,能作为语言code的是cmn(国语).yue(粤语).wuu(吴语)等.我通常建议写成 zh-cmn 而不是光写 cmn,主要是考虑兼容性(至少可匹配 zh),有不少软件和框架还没有据此更新. zh-CN 的问题还在于,其实多数情况下标记的是简体中文,但是不恰当的使用了地区,这导致同样用简体中文的 zh-SG(新加坡)等无法匹配.更典型的是 zh-TW 和 zh-HK.所以其实

!DOCTYPE声明对JavaScript的影响分析_javascript技巧

要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分:除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效:当然对JS的取值也会有影响. DOCTYPE声明如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> DOCTYP

注意:XHTML和HTML网页首先声明语言信息

xhtml|网页 当我开始XHTML 1.1的时候,我一直不知道应该在xml:lang上写什么好,我想使用中文,它的值是zh.zh-cn/zh-CN还是gb2312/gbk/gb18030或者utf8?通常遇到问题我都优先Google中文,无奈也是找不到答案.看到一些权威的网站上使用gb2312,我还差点相信了,但根据我使用Linux中设置语言的经验,我直觉告诉我这是错误的.于是开始了把范围缩小到W3C中去Google,找到了Tutorial: Using language informatio

HTML头部声明文档类型、语言和字符集的方法

在你每一个页面的顶端,你需要文档声明.是的,必须. 如果不指定文档类型,你的HTML不是合法的HTML,并且大部分浏览器会用"怪癖模式(quirks mode)"来处理页面,这意味着浏览器认为你自己也不知道究竟做什么,并且按浏览器自己的方式来处理你的代码.你可以是一个HTML大师,在地球上打遍天下无敌手,或者你的HTML可以无瑕疵,CSS可以很完美,但如果没有文档声明,或者错误的文档声明,你的网页与一个短视的,独眼的长臂猿婴儿十分艰难地堆砌起来的没两样. XHTML 1.0 Stric

XHTML 1.0:标记新的开端

xhtml 新标准的熟悉和入门内容: 还在用 HTML 编写文档?如果是的话,就不符合当前标准了.2000 年 1 月 26 日,XHTML 1.0 成为万维网联盟(W3C) 的建议.根据 W3C,HTML 不再是 Web 标记标准.取而代之,XHTML 1.0 已替代旧宠儿,标志着通信技术令人兴奋的新时代已经来临. 那么,XHTML 1.0 到底是什么?对 Web 开发人员来说,它意味着什么?下面从 W3C 的描述讲起:XHTML 1.0 是 XML 应用程序的 HTML 再形成.这意味着,如

XHTML+CSS完全基础知识

XHTML+CSS   选择什么样的DOCTYPE 开始制作符合标准的站点,第一件事情就是声明符合自己需要的DOCTYPE. 查看本站首页原代码,可以看到第一行就是: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 打开一些符合标准的站点,例如著名web设计软件开

二十二 声明 Declarations

这篇文章说明怎么定义XHTML文档. 定义文档声明类型 在网页的最顶部,你需要建立一个声明文档. 没有指定的文档,你的html不仅是不正确的html而且大部分浏览器会采用'quirks mode'解释它们,意味着浏览器不会理解你的主意而会采用它们自己的方法解析代码.你的HTML代码没有缺点,CSS完美无缺,但没有声明文档,或者是错误的声明文档,你的网页看起来就像近视眼在东拼西凑,学习有困难的长臂猿婴儿. XHTML 1.0 Strict声明文档: <!DOCTYPE html PUBLIC &quo