DOCTYPE已经探索

分享于 

11分钟阅读

Web开发

  繁體

介绍

最近我开始学习HTML5时,一个问题是浏览器如何知道,如果编写HTML兼容 HTML v4.1或者HTML版本。

为了找出相同查询的答复,我开始探索并在这里共享相同的知识。 我exploring我在网站上controlled标签,但我想了解更多关于这个标签的更多信息,但我还是想知道这个标签。

在本文中我将解释 <> 标签,并给出以下查询的答案。

浏览器是如何知道的,如果页面是 HTML4.1 或者 HTML5?

什么是 <> 标签以及该标记是做什么的? !

HTML4.1 & HTML5有多少类型的文档?

<DOCTYPE> 如何影响不同浏览器上的HTML元素的呈现? !

错误的" <DOCTYPE>"如何使HTML页面无效? !

如何验证写入的页是否有效或者是否有效?

我们应该如何决定 <>的类型? !

如何使用 <DOCTYPE 与文档模式( 标准。怪癖和几乎标准模式) 相关,浏览器如何决定如何在标准模式或者怪癖模式下呈现网页? !

让我们开始探索

让我们从一个开始回答。

如果网页是或者HTML5的话,浏览器如何才能知道它的内容?

在前面提到,每当使用IDE添加网页时,就会在页面的顶部自动添加一个名为 <的标记,它的属性很少定义。 这里 <DOCTYPE> 标记表示和信号浏览器,该页面是使用的HTML版本的页面。 浏览器遇到包含 <doctype>的网页时,它使用文档类型的值来确定网页的文档模式。 我们将使用 <,因为我们将在一段时间内讨论,这样定义的<DOCTYPE> 就像 <DOCTYPE。 这个标记本身表示写的网页与 HTML 5兼容。 因此,只要 <> 被定义为 <DOCTYPE html>,它就意味着使用了。

标签是什么这个标签做什么

"文档类型声明"或者 <DOCTYPE> 标记指示web浏览器有关HTML版本的信息,以及它的他标记在浏览器上的呈现方式。

<DOCTYPE> 告诉浏览器"我使用 HTML 4.01.",当浏览器看到它时,它假定你知道你在说什么并且编写 HTML 4.01. ! 这很好,因为浏览器将使用 HTML 4.01的布局和显示规则。 这个标签通知浏览器写的HTML是一个标准,所有浏览器都接受。 这个标准可以是 3个标准的换句话说,严格的,过渡的&框架集,我们将进一步讨论该标准。

当在页面中声明"doctype"时,浏览器知道如何处理页面和( 至少在你所关心的任何浏览器上),页面将显示如你所期望的。 它告诉浏览器文档的类型。

""声明表示标准HTML已经编写,并且编写的HTML页面符合 W3C ( 全球网络联盟) 定义的标准。)。

在 HTML 4.01中,<DOCTYPE> 声明引用一个 DTD ( 文档类型定义)。 DTD指定标记语言的规则,使浏览器能够正确地呈现内容。

DTD的目的是定义XML文档的合法构造块。 DTD使用一个合法元素和属性列表定义文档结构。 DTD可以声明为 inline inside 或者XML文档,也可以作为外部引用。

<DOCTYPE> 标签必须是HTML文档中的第一个标记,它看起来像 !

<DOCTYPE HTML public"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">

下面的图片剖析了DOCTYPE标签的每一部分。 仔细阅读以获得对相同的理解。

现在你可能认为我们没有讨论"过渡"这个词。 这个过渡是什么如果我们编写"标准"html 4.01,为什么它是过渡? 让我们来理解相同的意思。

实际上有两个 tmodel,一个是转换到 HTML 4.01,一个更严格的文件名已经存在于那里。

想象一下,你有一个网站,它的中有百万个网页,所有的网页都是用非标准的HTML编写的。 你想改进站点并得到整个HTML的4.01标准,但是你在 2.0年和 3.2天的HTML中使用了很多旧的旧东西。 如何使用html5过渡DOCTYPE来验证页面,但仍然允许某些遗留HTML文件。 这样,你可以确保标记(。像输入错误,不匹配的标签等等) 中没有任何完全错误,但是不必重新创建整个 HTML。 然后,删除了整个旧的HTML后,就可以准备好严格的文档类型,这确保了一个完全兼容的Web站点。

有多少类型的XHTML & HTML5有多少类型的?

HTML 4.01 & XHTML有三个不同的<DOCTYPE> 声明,而HTML5只有一个 <DOCTYPE> 声明。

HTML 4.01严格

这个DTD中,除表示或者不推荐的元素( 像字体) 之外,所有HTML元素和属性都是允许的。 框架集也不允许。

<DOCTYPE HTML public"-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd"> !

HTML 4.01过渡

在这个DTD中,所有HTML元素和属性都被允许包括表示或者反对的元素( 像字体)。 但仍然不允许框架集。

<DOCTYPE HTML public"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"> !

的HTML 4.01框架集

DTD中允许所有HTML元素和属性包括表现性或者反对的元素( 像字体) 以及框架集内容。

<DOCTYPE HTML public"-//W3C//DTD HTML 4.01 Frameset//EN""http://www.w3.org/TR/html4/frameset.dtd"> !

1.0 Strict

在这个DTD中,标记还必须编写成格式良好的XML。 除呈现或者不推荐的元素( 像字体) 之外,所有HTML元素和属性都被允许。 框架集也不允许。

这个DTD相当于 HTML4.01 严格 DTD,但标记也必须编写成格式良好的XML。

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

1.0过渡

在这个DTD中,标记还必须编写成格式良好的XML。 所有HTML元素和属性都允许包括表示或者不推荐的元素( 像字体)。 框架集也不允许。

这个DTD相当于 HTML4.01 转换 DTD,但标记也必须被写成格式良好的XML。

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

1.0框架集

这里DTD等于 XHTML 1.0过渡,但允许使用框架集内容。

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

1.1

这里DTD等于 XHTML 1.0严格,但允许你添加模块( 例如为东亚语言提供 ruby 支持)。

<DOCTYPE html public"-//W3C//DTD XHTML 1.1//EN""http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> !

的HTML 5

<DOCTYPE html> !

" <DOCTYPE>"如何影响不同浏览器上HTML元素的呈现? !

不同的浏览器以不同的方式呈现不同的标签。 定义DOCTYPE时,它意味着我们将告诉浏览器指定的DOCTYPE的HTML标准已经被使用。

When little little application application application application"n。怪癖,怪癖"浏览器模式下打开的应用程序的网页很少打开,有些时候会打开。 在探索"doctype"时,我知道只有正确的"doctype"才负责在正确的浏览器模式下打开网页。

错误如何使HTML页无效?

定义错误的DOCTYPE使网页无效。 当我们已经在 <img 比如> 标签中定义了 <属性时,会使页面无效,但它还是使用了不推荐的元素,这样我们就可以在表单中定义该页面了。

如果页写有效或者不正确,如何验证?

W3C有一个网站,允许你根据已经定义的" <DOCTYPE>"来验证你的网页。

http://validator.w3.org

这里网站允许 3种方式验证网页。

通过URI验证,允许在线验证网页。 如果网站公开可用,则可以通过在网站中直接提供网址来验证网页。

通过文件上传验证,允许通过在网站上上传页面来验证网页。

通过直接输入验证,允许通过在网站中提供的区域中处理标记来验证网页。

我们决定如何定义" <DOCTYPE>"的? !

在定义" <DOCTYPE>",时,我们想到了我们应该如何决定应该定义什么类型的DOCTYPE的大问题。 这很简单。

如果你想让我们在你的网页上 developing,那么我们就可以用它来 Strict。

如何确定与文档( 标准&怪癖) 模式的关系浏览器如何决定在标准模式或者怪癖模式下呈现网页?

浏览器将会发现你并不是真正编写 HTML 4.01,而是返回到问题模式。 然后你又回到了让各种浏览器以不同方式处理页面的问题。 获得可以预测结果的唯一方法是告诉浏览器你使用"html 4.01",并实际这样做。 web日益成为标准,所有浏览器都愿意支持标准,因此我们应该使用 <> 标准文档模式。

在探索DOCTYPE的同时,我开始了一本oreilly第一书的首页,在浏览器之间有一个有趣的面试。 我想在这里共享这个面试,这是非常有趣的,我对这个主题。

在本文中,我们学习了 <> 和文档模式,它们是在所有浏览器中一致呈现页面的重要内容。 建议在网页中使用标准文档模式,并始终定义页面中的<> 以避免任何兼容问题。

如果你能让我知道你对文章内容。介绍和覆盖的反馈,我会在未来的文章中提供帮助。

愉快的学习。

引用

http://msdn.microsoft.com/library/cc288325(v=vs.85).aspx

http://msdn.microsoft.com/en-US/library/gg699340(v=vs.85).aspx

http://msdn.microsoft.com/en-US/library/gg699338(v=vs.85).aspx


EXP  DOC  Doctype  
相关文章