Skip to content

[html] 第14天 为什么HTML5只需要写<!DOCTYPE HTML>就可以? #42

Open
@haizhilin2013

Description

@haizhilin2013
Collaborator

第14天 为什么HTML5只需要写<!DOCTYPE HTML>就可以?

Activity

hbl045

hbl045 commented on May 5, 2019

@hbl045

这个HTML5新标,H4之前还是要写很长一串的文本申明,还分有传统模式,严格模式

tsl1127

tsl1127 commented on May 7, 2019

@tsl1127

DOCTYPE是document type的缩写,是HTML中用来区分标准模式和怪异模式的声明,用来告知浏览器用标准模式渲染页面,在页面开始写即可
怪异模式兼容老页面

Konata9

Konata9 commented on Jul 27, 2019

@Konata9

因为 HTML5 与 HTML4 基于的基准不同。HTML4 基于 SGML 因此需要除了 DOCTYPE 外还需要引入 DTD 来告诉浏览器用什么标准进行渲染。DTD 还分为标准模式、严格模式。如果什么都不写,就完全让浏览器自我发挥,会变成怪异模式。

HTML5 不基于 SGML,因此后面就不要跟 DTD,但是需要 DOCTYPE 来规范浏览器的渲染行为。

注:SGML 是通用标记语言的集合。其中有 HTML、XML,因此需要用 DTD 来指定使用那种规范。

0x3c

0x3c commented on Oct 31, 2019

@0x3c

HTML5 之前基于 SGML, SGML 需要指定 DTD 解析文档, 可通过<!DOCTYPE>指定要使用的 DTD, 若不写则会进入怪异模式; HTML5 不基于 SGML, 不需要指明 DTD, 其<!DOCTYPE>只有一种: <!DOCTYPE html>.

giggleCYT

giggleCYT commented on Jun 15, 2020

@giggleCYT

因为HTML5不再基于SGML,不需要对DTD进行引用,但是需要 DOCTYPE 来规范浏览器的行为

smile-2008

smile-2008 commented on Sep 10, 2020

@smile-2008

HTML5 之前基于 SGML, SGML 需要指定 DTD 解析文档, 可通过<!DOCTYPE>指定要使用的 DTD, 若不写则会进入怪异模式; HTML5 不基于 SGML, 不需要指明 DTD, 其<!DOCTYPE>只有一种: .

xiezhenghua123

xiezhenghua123 commented on Apr 13, 2021

@xiezhenghua123

规定标准模式
不写的话就按照混杂模式执行代码(兼容旧版浏览器)

amikly

amikly commented on Nov 2, 2021

@amikly

DOCTYPE

  • DOCTYPE(Document Type Declaration)用于声明文档类型和DTD(Document Type Definition)规范,

    确保不同浏览器以相同的方式解析文档,以及执行相同的渲染模式。

  • DTD就是文档类型定义,一种标记符的语法规则,保证SGML和XML文档格式的合法性。

因为HTML5不再基于SGML,所以不需要引用DTD,只需要一个根元素(HTML)即可

yxllovewq

yxllovewq commented on Mar 7, 2022

@yxllovewq

总结:
DOCTYPE:不是html标签,必须放置于html文件首行,告诉浏览器以何种方式解析html文件。默认以怪异模式渲染。
html5以前,DOCTYPE基于SGML,需要显式申明DTD,html5后,不再基于SGML,不需要显式声明DTD。

WangXi01

WangXi01 commented on Jul 13, 2022

@WangXi01

doctype是document type的意思,html5之前,基于sgml,除了doctype外还需要告诉浏览器是标准模式还是怪异模式,但是html5就不需要这个了,所以只需要引入

Iambecauseyouare

Iambecauseyouare commented on Feb 25, 2023

@Iambecauseyouare

因为HTML5不基于SGML,HTML4.01中的doctype需要对DTD进行引用,因为HTML4.01基于SGML,因此HTML5不需要对DTD进行引用,但是需要doctype来规范浏览器的行为

KrisLeong-LBY

KrisLeong-LBY commented on Jan 26, 2024

@KrisLeong-LBY

HTML5不基于SGML, 因此不需要对DTD进行引用,但是需要doctype 来规范浏览器的行为(让浏览器按照它们应该的方式来运行) ;而HTML4.01 基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型。

lili-0923

lili-0923 commented on Feb 4, 2024

@lili-0923

因为 HTML5 与 HTML4 基于的基准不同。

HTML4 基于 SGML 因此需要除了 DOCTYPE 外还需要引入 DTD 来告诉浏览器用什么标准进行渲染。DTD 还分为标准模式、严格模式。如果什么都不写,就完全让浏览器自我发挥,会变成怪异模式。

HTML5 不基于 SGML,因此后面就不要跟 DTD,但是需要 DOCTYPE 来规范浏览器的渲染行为。 注:SGML 是通用标记语言的集合。其中有 HTML、XML,因此需要用 DTD 来指定使用那种规范。

pengsir120

pengsir120 commented on Sep 22, 2024

@pengsir120
是HTML5文档类型的声明,位于HTML文档的最顶部。它告诉浏览器当前文档遵循的是HTML5版本的标准。

它有助于浏览器确定使用何种模式来处理HTML文档。在HTML5中,是最简化且推荐的声明方式,不区分大小写。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @smile-2008@haizhilin2013@Konata9@WangXi01@0x3c

        Issue actions

          [html] 第14天 为什么HTML5只需要写<!DOCTYPE HTML>就可以? · Issue #42 · haizlin/fe-interview