被忽视的DOCTYPE说明分析
建站知识 2021-07-02 22:41www.168986.cn长沙网站建设
doctype就是其中一个:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://.w3./TR/xhtml11/DTD/xhtml11.dtd">
1. doctype是什么
doctype标签 用来指定document的dtd(Document Type Definition)的,写在每个html的最前面,形如
<!DOCTYPE RootElement Availability "URI" [declarations]>
如几种常见的doctype:
HTML 4.01: Strict<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://.w3./TR/html4/strict.dtd">
HTML 4.01 Transitional<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://.w3./TR/html4/loose.dtd">
XHTML 1.1 Strict DTD<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Strict//EN" "http://.w3./TR/xhtml1/DTD/xhtml1-strict.dtd">
2. doctype能做什么
有没有指定doctype, 以及指定不同的doctype都会激活不同的浏览器模式,从而产生对一些对html,css和js的影响,其中最著名的就是所谓的盒模型问题。
2.1 为什么会有多种模式
在很久很久以前还是scape和ie争霸天下的时代,由于太强大了,浏览器模式是由浏览器自己说了算的。时光流逝,转眼到了战国群雄的时代,大家发现如果都自己说了算的话天下就乱套了,就商量说推举个盟主吧,于是w3c就上台了。问题又来了,譬如IE,虽说再不能一头独大,向标准看齐是大势所趋,假如浏览器只支持标准的话,之前的许多页面又会产生一些问题。
于是doctype应运而生,假如没有指定任何doctype,就采用原先的模式,被称为怪癖模式(Quirks Mode),假如指定了doctype,就遵循标准,被称为标准模式或严格模式(Standards Mode)。期间,以Mozilla为代表的几位,觉得标准模式里诸如img的解析不是很合适,就保留了一些个人意见,在指定一些特定的doctype情况下,会采用一种准标准模式(Almost Standards Mode),具体情况请参考Activating Browser Modes with Doctype,或是@随网之舞的译文用doctype激活浏览器模式。
2.2 不同模式的具体影响
@ppk大牛已经给我们做了很好的,Quirks mode and strict mode。
3. 建议采用的doctype
<!DOCTYPE HTML>
理由支持html5,在不识别的情况下,会采用严格模式。
再加入一些reset css,如img { display: block }解决浏览器兼容问题。
需要提醒注意的是,现在很多人使用的<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">以及<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">在几个主要浏览器下都只相当于怪癖模式,换句话说,可以不加。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://.w3./TR/xhtml11/DTD/xhtml11.dtd">
1. doctype是什么
doctype标签 用来指定document的dtd(Document Type Definition)的,写在每个html的最前面,形如
<!DOCTYPE RootElement Availability "URI" [declarations]>
如几种常见的doctype:
HTML 4.01: Strict<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://.w3./TR/html4/strict.dtd">
HTML 4.01 Transitional<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://.w3./TR/html4/loose.dtd">
XHTML 1.1 Strict DTD<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Strict//EN" "http://.w3./TR/xhtml1/DTD/xhtml1-strict.dtd">
2. doctype能做什么
有没有指定doctype, 以及指定不同的doctype都会激活不同的浏览器模式,从而产生对一些对html,css和js的影响,其中最著名的就是所谓的盒模型问题。
2.1 为什么会有多种模式
在很久很久以前还是scape和ie争霸天下的时代,由于太强大了,浏览器模式是由浏览器自己说了算的。时光流逝,转眼到了战国群雄的时代,大家发现如果都自己说了算的话天下就乱套了,就商量说推举个盟主吧,于是w3c就上台了。问题又来了,譬如IE,虽说再不能一头独大,向标准看齐是大势所趋,假如浏览器只支持标准的话,之前的许多页面又会产生一些问题。
于是doctype应运而生,假如没有指定任何doctype,就采用原先的模式,被称为怪癖模式(Quirks Mode),假如指定了doctype,就遵循标准,被称为标准模式或严格模式(Standards Mode)。期间,以Mozilla为代表的几位,觉得标准模式里诸如img的解析不是很合适,就保留了一些个人意见,在指定一些特定的doctype情况下,会采用一种准标准模式(Almost Standards Mode),具体情况请参考Activating Browser Modes with Doctype,或是@随网之舞的译文用doctype激活浏览器模式。
2.2 不同模式的具体影响
@ppk大牛已经给我们做了很好的,Quirks mode and strict mode。
3. 建议采用的doctype
<!DOCTYPE HTML>
理由支持html5,在不识别的情况下,会采用严格模式。
再加入一些reset css,如img { display: block }解决浏览器兼容问题。
需要提醒注意的是,现在很多人使用的<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">以及<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">在几个主要浏览器下都只相当于怪癖模式,换句话说,可以不加。
长沙网站设计
- 如何进行东阳SEO关键词优化?
- 边坝哪有关键词排名优化:提升你的网站流量与
- 安国百度优化服务:提升您的在线可见性
- 阜康新手做SEO怎么做
- 山西seo网站排名关键词优化:提升您网站曝光率
- 临沂seo网站排名关键词优化:提高你的网站可见
- 广西SEO网站推广怎样付费比较合理
- 双辽SEO网站推广:提升你的网站可见性与流量
- 辽宁企业网站优化购买方式有哪些
- 提升宝清百度SEO排名的实用技巧与策略
- 静宁百度SEO排名:提升您网站曝光率的关键策略
- 彭州百度SEO排名的提升策略和实施指南
- 广南百度关键词SEO:提升网站排名的关键策略
- 辽宁关键词优化怎么做论坛营销
- 吉林百度seo排名如何做到让用户满意
- 内黄百度优化服务:提升在线可见性的关键