什么是dtd文件,为什么须要DTD
DTD为英文Document Type Definition,中文意思为“文档类定义”。DTD肩负着两重任务: 一方面它帮助你编写合法的代码 ,另一方面它让浏览器正确地显示器代码。也许你会问它们居然有这样的能力?
如是你是一个个网页制作者,你会很清楚地知道一个HTML文档的基本结构可分为两个主要部分;
<html> <head> 头部信息 </head> <body> 可视内容 </body></html>上面的代码你是再熟悉不过的了。但你知道下面的代码既是正确的又是错误的吗?
<P align="center">这是一个居中段落</P>
在XHTML中,标记是区分大小写的,上面的代码毫无意义。可在HTML中它是一个居中段落。浏览器是怎样处理这种情况呢?难道浏览器认为你写的是HTML,然后把它作为一个一个居中段落显示?如是你写的是XHTML呢,它将是一段不可显示的代码!浏览器是怎样知道你用的是什么标记语言然后正确对待这段代码呢?
这就是DTD的工作了。一个DTD应该放在每一个文档的第一行(包括空白).这样正确地放置,你的DTD才能告诉浏览器的用的是什么标记语言。在通常情况下,如果你编写的是正确代码,并拥有一个合适的DTD,浏览器将会根据W3C的标准显示你的代码。
如果说你没有使用DTD,你将很难预测浏览器是怎样显示你的代码,仅仅在同一浏览器就有不同的显示效果。尽管你的网页做得非常飘亮,要是没有使用DTD,你的努力也是白费的。因此,一个DTD是必不可少的。
如果你正在做网页,你的DTD应该反映出你用的是什么标记语言。下面是一个DTD列表,你应该使用其中之一。
XHTML 1.1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
XHTML1.0 Strict DTD(严格的文档类定义):要求严格的DTD,你不能使用表现标识和属性,和CSS一同使用。完整代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML1.0 Transitional DTD(过渡的文档类定义):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法)。完整代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML1.0 Frameset DTD(框架集文档类定义):专门针对框架页面设计使用的DTD,如果你的页面中包含有框架,需要采用这种DTD。完整代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
HTML 4.01 Strict DTD (严格的文档类定义)不能包含已过时的元素(或属性)和框架元素。对于使用了这类DTD的文档,使用如下文档声明:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"> HTML 4.01 Transitional DTD(过渡的文档类定义)能包含已过时的元素和属性但不能包含框架元素。。对于使用了这类DTD的文档,使用如下文档声明:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"> HTML 4.01 Frameset DTD(框架集文档类定义)。能包含已过时的元素和框架元素。。对于使用了这类DTD的文档,使用如下文档声明:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">HTML 3.2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
HTML 2.0
<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
下面是一个合法的HTML文档。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html> <head> 头部信息 </head> <body> 可视内容 </body></html>
分享到:
相关推荐
1. **版本兼容性**:不同的Hibernate版本可能有不同的DTD文件,因此要确保使用的DTD文件与Hibernate版本匹配,否则可能会导致配置文件无法解析或验证失败。 2. **错误检查**:IDE的自动提示和错误检查可以帮助我们...
在本例中,压缩包"需要的DTD文件.rar"可能包含了一个或多个DTD文件,这些文件可能是为了定义特定领域的XML文档结构。例如,一个DTD可能用于定义新闻报道的XML结构,另一个可能用于定义电子书的元数据结构。这些DTD...
标题中的“Eclipse XML自动提示DTD文件下载”指的是在使用Eclipse IDE进行XML开发时,如何获取并配置DTD(Document Type Definition)文件以实现代码自动提示功能。这通常涉及到Eclipse的XML编辑器和XML Schema/DTD...
### 配置DTD文件步骤详解 #### 一、前言 在进行MyBatis框架的开发过程中,正确地配置DTD(Document Type Definition)文件是非常重要的一步。DTD文件可以帮助开发者更好地理解XML文件结构,并确保XML文件格式正确...
在开发MyBatis应用时,需要正确引用这两个DTD文件,例如: ```xml <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> ``` 和 ```xml <!DOCTYPE...
这篇名为“Eclipse XML自动提示DTD文件(hibernate struts2.0 log4j).dtd的下载”的博客文章,可能介绍了如何在Eclipse中配置XML编辑器以支持对特定DTD文件的自动提示,比如与Hibernate、Struts2.0和Log4j相关的...
1. **导入DTD文件**:首先,你需要将下载的DTD文件保存到你的项目资源目录下。这可以通过Eclipse的"File" -> "Import" -> "General" -> "Files and Folders"菜单完成。 2. **创建XML文件**:在Eclipse中创建一个新...
在Eclipse中,要启用`struts-2.3.dtd`的代码提示,你需要将DTD文件添加到项目的构建路径中。这通常包括将DTD文件放在项目的某个目录下,然后在项目的XML首选项中指定其位置。这样,每当编辑`struts.xml`时,Eclipse...
这几天无聊开发了一个程序,需要AJAX要求也不高就使用了DWR,但是程序始终报错,因为以前用过DWR,所以最后才发现是DTD文件路径已经被改变了,这里留下一个以防程序又找不到DTD
Java EE开发中,DTD文件主要用于描述和验证XML配置文件的结构。例如,以下是一些常见的Java EE相关的DTD文件及其用途: 1. `web-app_3_1.dtd`:这是Java Servlet 3.1规范中的Web应用部署描述符DTD。它定义了`web....
首先,我们需要理解什么是DTD(Document Type Definition)。DTD是一种定义XML文档结构的语言,它规定了XML文档中元素和属性的规则。在Log4j的上下文中,`log4j.dtd`是Log4j配置文件(通常命名为`log4j.properties`...
在Hibernate开发过程中,正确配置和理解DTD文件与JAR包是至关重要的,因为它们构成了Hibernate的核心组件。 首先,我们来解释一下DTD(Document Type Definition)。在XML文档中,DTD定义了元素、属性及其结构,...
这种方式有利于维护和重用,但需要确保XML文档和DTD文件的位置关系或路径正确。 3. **混合内部和外部DTD**:在`<!DOCTYPE>`声明中同时包含内部和外部DTD,允许部分规则在文档内定义,部分规则在外部文件定义。 **...
本压缩包"javaweb dtd.rar"包含了JavaWeb开发中可能需要用到的各种DTD文件,适用于不同开发工具。 DTD的主要功能是为XML文档定义一套预定义的规则,包括元素、属性、实体以及这些元素之间的关系。在JavaWeb开发中,...
虽然注解方式不需要DTD,但理解DTD对于理解MyBatis的XML配置是有帮助的,因为两者在概念上是类似的。 6. **自定义DTD**:开发者也可以根据需求创建自己的DTD,扩展MyBatis的默认配置,但这需要对XML和DTD有深入的...
其中,`"/path/to/dubbo.dtd"`应替换为你的本地DTD文件的实际路径。 3. 保存并关闭配置文件,Dubbo将在启动时使用本地的DTD进行解析。 使用本地DTD的好处在于提高了系统的稳定性和响应速度,特别是在网络环境不...
- 当从一个Struts2版本升级到另一个版本时,需要确保配置文件遵循新版本的DTD。不兼容的配置可能导致应用无法正常运行,因此开发者需要根据新DTD更新配置。 7. **最佳实践** - 保持Struts2框架的版本更新,以获取...
例如,如果我们有一个名为`book.xml`的XML文档,其根元素为`book`,并且我们有一个名为`book.dtd`的外部DTD文件,我们的`<!DOCTYPE>`声明将是: ```xml <!DOCTYPE book SYSTEM "book.dtd"> ``` 关联外部DTD后,...
1. **创建DTD**:通过插件提供的图形界面或文本编辑器,可以方便地创建新的DTD文件,定义元素和属性。 2. **编辑DTD**:在源代码视图或图形视图下,可以修改DTD的元素结构,添加、删除或修改元素、属性。 3. **验证...