不管是刚接触前端,还是你已经精通web前端开发的内容,你应该知道在你写html的时候需要定义文档类型
你知道如果没有它,浏览器在渲染页面的时候会使用怪异模式;你知道各个浏览器在怪异模式下对各个元素渲染是有差异的。所以你会写像这样的doctype:

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

好在现在的各种web开发工具都足够强大,支持插入模板代码,因此你并不需要把这又长又臭的doctype一个个字母的敲出来。但是如果你受够了它,你也许可以尝试下面这个写法:

 
<!DOCTYPE html>

哇哦,很简洁哦!好处显而易见:一、你可以轻松的写下这个doctype,而不用担心会写错;二、你大概省下了105字节字符,对于一个每日PV达到千万级的站点,它可以省下相当客观流量;三、它是向后兼容的,是的,html5的doctype就是这样写的,并且现代浏览器都认识它。

如果你跟我一样一直以为:没有指定dtd将会开启浏览器的怪异模式,这种说法是错的!正确的说法应该是没有定义doctype才会开启怪异模式,也就是说你只需要定义<!doctype html>就可以让浏览器在严格模式(标准模式)下渲染页面,而不需要指定某个类型dtd。让我们来回顾一下,所有的浏览器都需要两种模式:怪异模式和严格模式(也有人叫标准模式)。IE 6 for Windows/mac, Mozilla, Safari和Opera 都实现了这两种模式,但是IE 6以下版本永远定在了怪异模式。关于两种模式,你需要知道以下几点:

    在标准化之前写的页面是没有doctype的,因此没有doctype的页面是在怪异模式下渲染的。 反过来说,如果web开发人员加入的doctype,说明他知道他所要做的事情,大部分的doctype会开启严格模式(标准模式),页面也会按照标准来渲染。 任何新的或者未知的doctype都会开启严格模式(标准模式)。 每个浏览器都有自己的方式来激活怪异模式。你可以看看这个清单:http://hsivonen.iki.fi/doctype/

注意:你可以根本不需要根据你选择的doctype来验证你的页面,只要doctype标签存在就足以开启严格模式(标准模式)了。如果你对我说的这些还是感到怀疑,那么请前往http://www.quirksmode.org/css/quirksmode.html#link2了解你想知道的内容。我们只需要一小段JavaScript代码就可以得到答案,它就是:

 
mode=document.compatMode;

这个代码可以用来判断,当前浏览器是处于怪异模式还是标准模式,该属性的兼容性毋庸置疑,如果你表示怀疑,可以查看http://www.quirksmode.org/dom/w3c_html.html#t11。你可以在你想测试的浏览器里访问:http://wanz.im/demo/doctype-test.html,便可看到结果了,据我所知,这样并没有激活怪异模式,即使是ie6下,如果你有什么新发现,欢迎给我留言。

最新资讯
李斌的铺张与何小鹏的节俭

李斌的铺张与何小鹏的

在营销上,蔚来汽车创始人李斌像马斯克一样高举高打,其为
新iPad Pro现神秘开孔 Smart Connector或移至底部

新iPad Pro现神秘开孔

国外网站Slashleaks今日曝光了一张疑似新款10.5寸iPad
黄峥才不是罗敏叻

黄峥才不是罗敏叻

今天的拼多多,便是昨天的趣店,现在的黄峥,就是曾经的罗敏
创业、艺术家和量子物理

创业、艺术家和量子物

科学和艺术在山脚下分开行走,最后在美学的山顶相遇。
苹果预定大量中国赴美货运航班 为新iPhone做准备

苹果预定大量中国赴美

据Reddit用户爆料,苹果近期已经定下了未来数周几乎所有
从阿里巴巴高投入预判未来收益

从阿里巴巴高投入预判

亚马逊和阿里巴巴两家公司很像,不是说他们都做电商、云
最新文章
HTML如何在两个div标签中间画一条竖线

HTML如何在两个div标

最近项目经理交小编一个活儿,需要在界面当中画一条竖线
多种实例解析HTML表单form的使用方法

多种实例解析HTML表单

这篇文章主要以多种实例的方式帮助大家了解分析HTML表
Html+CSS绘制三角形图标

Html+CSS绘制三角形图

这篇文章主要为大家详细介绍了Html+CSS绘制三角形图标
HTML的checkbox和radio样式美化的简单实例

HTML的checkbox和radi

下面小编就为大家带来一篇HTML的checkbox和radio样式
浅谈html标签的显示模式(块级标签,行内标签,行内块标签)

浅谈html标签的显示模

下面小编就为大家带来一篇浅谈html标签的显示模式(块
html+css3太阳系行星运转动画效果的实现代码

html+css3太阳系行星

下面小编就为大家带来一篇html+css3太阳系行星运转动