HTML的Quirks模式

什么是Quirks模式

Quirks,翻译成中文就是‘怪癖’,也就是奇怪的意思,这个东西的由来要从上古时期提及了。。。当初web的世界只有两个巨人,一个是微软的IE,另外一个是网景的Navigator。双方厮杀了好几年,谁都不让着谁。而且为了将各自的阵营与对方区别开,开始针对对方搞差别化,使得开发者不得不针对两种浏览器平台作两个网页。大地看到了这一切的不公,在混沌之中创造了w3c联盟,而w3c的使命就是摧毁IE和Navigator之间的壁垒,使得两个平台的代码能够通用。因而乎在w3c强大的淫威之下双方按照标准重铸了本身,而之前的各自的渲染模式则保留为quirks模式,用来兼容老式的网页了。通常现代浏览器都有3种渲染模式:quirks模式,差很少标准模式( almost standards mode),彻底标准模式(full standards mode)。css

如何开启传说中的Quirks模式

你们都知道一个html文件第一行都会有一个DOCTYPE标签,这个标签无外乎就几种:HTML4.01,HTML5,XHTML(注意,在DOCTYPE中注明XHTML并不会让浏览器以XHTML格式进行渲染,具体参见MDN的XHTML说明)。而开启Quirks模式很简单。。。。就是把DOCTYPE随便写。。写的浏览器根本认不出来这是什么玩意儿以后,你就成功开启了!html

好比这样web

<!DOCTYPE htmlxox>

或者这样浏览器

<! DOCTYPE =.= >

或者你直接不写均可以!服务器

那么开启Quirks以后,我能获得哪些feature呢?

  • table标签除了font-family外,不会继承任何字体类css。
  • img标签float以后会自动有3px的mergin。
  • input和textarea标签的box-sizing属性默认为border-box。
  • form标签自带margin-bottom:1em属性。
  • class与id的值不区分大小写。
  • 当加载css文件的时候,只要link标签里type值设置为text/css,那无论服务器传来的* * * * Content-Type是什么,都会看成css处理。
  • css里的颜色值不以#开头。
  • css里的长度值若是没有单位,则默认为px。
  • style的属性容许被{}包裹
  • 当css中background值为空的时候,background url的值也被设置为空。
  • body标签接受topmargin,bottommargin,leftmargin,rightmargin做为css属性。

这里我就节选一点了,具体的能够参见MDN字体

相关文章
相关标签/搜索