-
DOCTYPE
2020-02-28 13:38:02DOCTYPE DOCTYPE是document type(文档类型)的简写,在web设计中用来说明你用的XHTML或者HTML是什么版本 HTML5 不基于 SGML,所以不需要引用 DTD <!DOCTYPE html>声明必须是 HTML 文档的第一行,位于 <...DOCTYPE
每日更新前端基础,如果觉得不错,点个star吧 😃
https://github.com/WindrunnerMax/EveryDayDOCTYPE是document type(文档类型)的简写,在web设计中用来说明你用的XHTML或者HTML是什么版本
HTML5 不基于 SGML,所以不需要引用 DTD
<!DOCTYPE html>
声明必须是 HTML 文档的第一行,位于<html>
标签之前<!DOCTYPE html> <html> <head> <title></title> </head> <body> </body> </html>
在 HTML 4.01 中,<!DOCTYPE> 声明引用 DTD,因为 HTML 4.01 基于 SGML。
DTD 规定了标记语言的规则,这样浏览器才能正确地呈现内容。<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
其中的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">
-
doctype
2018-11-01 17:06:04doctype是什么? doctype就是文档类型的意思 现在最常见的HTML文件的doctype就是 &lt;!DOCTYPE html&gt; 意思是这个文档的类型是 HTML5 doctype 在哪里声明? 对于一直使用IDE生成HTML模板的人来...HTML 中的doctype
doctype是什么?
doctype就是文档类型的意思
现在最常见的HTML文件的doctype就是<!DOCTYPE html>
意思是这个文档的类型是HTML5
doctype 在哪里声明?
对于一直使用IDE生成
HTML
模板的人来说这个东西可能比较陌生, 因为IDE会自动帮你生成HTML模板
<!DOCTYPE>
声明必须是HTML
文档的第一行,位于<html>
标签之前
但它不是HTML
标签;它是指示web
浏览器关于页面使用哪个HTML
版本进行编写的指令HTML 有过哪些 doctype
我们现在写的html文档绝大部分都是
HTML5
版本的
HTML5
对应的 doctype 是<!DOCTYPE html>
其他的HTML版本对应的doctype如下:HTML版本 doctype HTML5 <!DOCTYPE html>
HTML 4.01 Strict <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Transitional <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 Frameset <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
XHTML 1.0 Strict <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
不声明 doctype 会怎么样?
其实浏览器是有默认的 doctype,如果没有声明则使用默认的doctype
但是为了规范, 还是推荐自己声明对应的 doctype
而且一般用IDE自动生成HTML
模板都会加上doctype
但是一般是HTML5的doctype -
Doctype
2016-03-23 15:51:32DOCTYPE声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。该标签可声明三种 DTD 类型,分别表示严格版本、过渡版本以及基于框架的 HTML 文档。 详细请看:...DOCTYPE声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。
该标签可声明三种 DTD 类型,分别表示严格版本、过渡版本以及基于框架的 HTML 文档。
详细请看:http://www.w3school.com.cn/tags/tag_doctype.asp怪异模式和严格模式(译注:一般称为标准模式:Standards Mode,下文中的严格模式都可以理解为标准模式)是浏览器解析CSS时的两种‘模式’。在标准模式中,浏览器根据规范呈现页面;在混杂模式中,页面以一种比较宽松的向后兼容的方式显示。混杂模式通常模拟老式浏览器(比如Microsoft IE 4和Netscape Navigator 4)的行为以防止老站点无法工作。
Mozilla和Safari还有第三种模式,称为”几乎标准的模式(almost standards mode)”,除了在处理表格的方式上有一些细微的差异之外,这种模式与标准模式相同。
对于这两种模式之间的差异,最显著的一个例子与Windows上IE专有的盒模型有关。在IE 6出现时,在标准模式中使用的是正确的盒模型,在混杂模式中使用的则是老式的专有盒模型。为了维持对IE 5和更低版本的向后兼容性,Opera 7和更高版本也在混杂模式中使用有缺点的IE盒模型。呈现方面的其他差异比较小,而且是与特定浏览器相关的,包括对于十六进制颜色值不需要#号、假设CSS中没有指定单位的长度的单位是像素,以及在使用关键字时将字号增加一级。问题的产生
当Netscape4(译注:网景公司早期的浏览器)和IE4(微软公司早期的浏览器)实现CSS机制时,并没有遵循W3C提出的标准。Netscape4 提供了糟糕的支持,而IE4 虽然接近标准,但依旧未能完全正确的支持标准。尽管IE 5 修复了IE4 许多的问题(bugs),但是依然延续CSS实现中的其它故障(主要是盒模型(box model)问题)。
为了保证自己的网站在不同的浏览器中都能正确展现,网页开发者不得不依据各个浏览器的自身的规范来使用CSS。因此大部分网站的CSS实现并未符合W3C的标准。
然而随着标准一致性变得越来越重要,浏览器开发商不得不面临一个艰难的抉择:逐渐遵循W3C的标准是前进的方向。但是改变现有CSS的实现,完整去遵循标准,会使许多网站或多或少受到破坏。如果浏览器突然以正确的方式解析现存的CSS,陈旧的网站显示必然受到影响。
因此立即遵循标准会产生问题,然而忽略标准则又会维持浏览器大战时(译注:微软和网景之间的一段竞争)所产生的混乱。
解决方案:
任何的解决方案必须跟随如下两个方面:
1:允许网站开发者能够选择他们所熟知的模式。
2:依然使用旧式规则显示陈旧的网站。换句话说,所有的浏览器需要提供两种模式:怪异模式(即兼容模式)服务于旧式规则,严格模式服务于标准规则。Mac平台的IE浏览器最先实现这两种模式,Mozilla, Safari、Opera和Windows平台的IE6也相继实现了这两种模式。Windows平台的IE5和Netscape4则只提供了怪异模式。
选择使用哪种模式需要一个触发器,而 “DOCTYP切换” 则用于此目的。依照标准,任何一个(X)HTML文档必须拥有一个DOCTYPE(译注:DTD(文档类型定义)是一组机器可读的规则,它们指示(X)HTML文档中允许有什么,不允许有什么,DOCTYPE正是用来告诉浏览器使用哪种DTD,一般放在(X)HTML文档开头声明)用以告诉其他人这个文档的类型风格
1:产生于标准化浪潮以前的网页并没有DOCTYPE声明。因此’没有DOCTYPE’意味着触发怪异模式:既依据旧式的CSS规则渲染网页。也就是说DOCTYPE不存在或形式不正确会导致HTML和XHTML文档以混杂模式呈现。
2:相反,如果开发者明确知道包含DOCTYPE,他们应该明白他们想要怎么做。因此大部分的DOCTYPE声明将触发严格模式:即依据标准的CSS规则渲染网页。
3:任何新的或未知的DOCTYPE将触发严格模式。
4:一些页面依据怪异模式而写,但是却包含DOCTYPE。这种情况下各个浏览器依据自己的DOCTYPE规则列表来触发怪异模式。
注意:你的网页并不一定要依据所选择的DOCTYPE去获得有效性验证,一个DOCTYPE标签足以触发严格模式。
简单概括
区别:严格模式是浏览器根据规范去显示页面;混杂模式是以一种向后兼容的方式去显示
意义:决定浏览器如何渲染网站(浏览器使用那种规范去解析网页)
触发:浏览器根据doctype是否存在和使用的是那种dtd来决定。 (对于HTML 4.01文档,包含严格DTD的DOCTYPE常常导致页面以标准模式呈现。包含过渡DTD和URI的DOCTYPE也导致页面以标准模式呈现,但是有过 渡DTD而没有URI会导致页面以混杂模式呈现。) -
doctype
2009-12-07 17:53:00为页面添加正确的DOCTYPE 很多设计师和开发者都不知道什么是DOCTYPE,DOCTYPE有什么用。DOCTYPE是document type的简写。主要用来说明你用的XHTML或者HTML是什么版本。浏览器根据你DOCTYPE定义的DTD(文档类型定义)来...为页面添加正确的DOCTYPE
很多设计师和开发者都不知道什么是DOCTYPE,DOCTYPE有什么用。DOCTYPE是document type的简写。主要用来说明你用的XHTML或者HTML是什么版本。浏览器根据你DOCTYPE定义的DTD(文档类型定义)来解释页面代码。所以,如果你不注意设置了错误的DOCTYPE,结果会让你大吃一惊。XHTML1.0提供了三种DOCTYPE可选择:
(1)过渡型(Transitional )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
(2)严格型(Strict )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
(3)框架型(Frameset )
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
对于我们初级改善来说,只要选用过渡型的声明就可以了。它依然可以兼容你的表格布局、表现标识等,不至于让你觉得变化太大,难以掌握。
Tip:你懒得输入上面过渡型代码的话,可以访问http://www.macromedia.com/网站的首页,然后查看源代码,把head区同样的代码拷贝粘贴就可以了。 -
DocType
2010-04-22 10:24:00除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。 XHTML 1.0 提供了三种DTD声明可供选择: 过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的... -
DOCTYPE
2007-04-26 15:07:00ASP.NET 2.0 中新建的页面...DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd "> 这会导致有些javascript程序运行不正常,删除即可。 -
change $doctype in doctype
2020-12-08 19:32:51<div><p>Can you change $doctype property in doctype. <p>the use of $ make impossible search it by Mango Queries <pre><code> using MyCouch.Extensions; namespace MyCouch.Serialization.Conventions { ... -
doctype作用_doctype
2020-08-18 18:49:55doctype作用Specifying the correct doctype of your web page is very important. Without it, the client (the web browser, iPhone, etc) will have no idea which version of ... -
doctype xhtml generates html5 doctype
2021-01-12 08:55:03doctype xhtml </code></pre> <p>or <pre><code> ! doctype xhtml </code></pre> <p>produce only html 5 doctype</p> <pre><code> </code></pre>该提问来源于开源项目:slim-template/slim</p></div> -
认识doctype
2019-10-04 09:14:38默认情况下,FF和IE的解释标准是不一样的,...学习网页标准,浏览器兼容,本文介绍教您认识DOCTYPE: 一、什么是DOCTYPE DOCTYPE是Document Type(文档类型)的简写,在页面中,用来指定页面所使用的XHTML(或...
-
lineout是什么接口
-
php实现上传图片保存到数据库的方法
-
NFS 实现高可用(DRBD + heartbeat)
-
xxx讲话实录.zip
-
基于电商业务的全链路数据中台落地方案(全渠道、全环节、全流程)
-
Xshell连接VMware虚拟机
-
基于对偶四元数的姿轨耦合动力学模型1.md
-
数据结构实践准备
-
Mysql数据库面试直通车
-
stm32库移植样例程序.rar
-
使用vue搭建微信H5公众号项目
-
信息安全风险评估与风险管理.ppt
-
【ACWing】1023. 买书
-
123. 买卖股票的最佳时机 III
-
LVS + Keepalived 实现 MySQL 负载均衡与高可用
-
Vue项目城市选择页-列表性能优化(8-7)
-
377. 组合总和 Ⅳ
-
MySQL 事务和锁
-
linux基础入门和项目实战部署系列课程
-
map和flatMap的区别