月度归档:2014年05月

web前端开发兼容问题(一)

文档模式

自从html5之后文档模式一般都会是<!DOCTYPE html>可是有时候会有很多问题,在低版本的兼容方面,主要区别就是不同的模式会渲染不同的css,最明显的一个地方就是IE的盒子模型。

怪异模式

听名字就知道了,其实就是一种比较怪的模式,在IE6及以下,如果不声明或者声明方式不对都会默认使用盒子模型。而且可能还会用其他问题。在IE6中我们可以使用document声明来避免标准模式。

标准模式

使用中w3c的规范的模式,符合正常的使用规范。

近标准模式

又称严格(strick)模式,按照标准模式进行渲染,只有在一种情况下不同就是,表单元格内部图片的布局采用和“quirks”模式相同的方式被处理,而不是按照标准模式。

所以说如果网站对向下兼容要求比较高的话,尽量一律按照标准模式写文档声明,如果对于现代浏览器来说,完全可以写<!DOCTYPE HTML>。主要还是根据需求决定。

<meta>标签

可以使用<meta http-equiv="X-UA-Compatible" content="IE=Edge">来保持对IE的兼容性。Edge表示采用系统内的IE的最高版本。另外还有:

  • “IE=edge”
  • “IE=10”
  • “IE=EmulateIE10”
  • “IE=9”
  • “IE=EmulateIE9
  • “IE=8”
  • “IE=EmulateIE8”
  • “IE=7”
  • “IE=EmulateIE7”
  • “IE=5”

对于有些现在有些浏览器的版本是双核
可以使用<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">来默认打开谷歌内核。
参考:stackoverflow