x-ua-compatible 用來指定IE瀏覽器解析編譯頁面的model
x-ua-compatible 頭標簽大小寫不敏感,必須用在 head 中,必須在除 title 外的其他 meta 之前使用。
1、使用一行代碼來指定瀏覽器使用特定的文檔模式。
<meta http-equiv="x-ua-compatible" content="IE=9" >
<meta http-equiv="x-ua-compatible" content="IE=8" >
<meta http-equiv="x-ua-compatible" content="IE=7" >
2、在一些情況下,我們需要限定瀏覽器對文檔的解析到某一特定版本,或者將瀏覽器限定到一些舊版本的表現中。可以用如下的方式:
<meta http-equiv="x-ua-compatible" content="IE=EmulateIE9" >
<meta http-equiv="x-ua-compatible" content="IE=EmulateIE8" >
<meta http-equiv="x-ua-compatible" content="IE=EmulateIE7" >
使用這種寫法,瀏覽器或者使用標准模式進行解析,或者使用 IE5 Quirks 模式進行解析。
3、為了測試,我們也可以使用下面的語句指定瀏覽器按照最高的標准模式解析頁面。
<meta http-equiv="x-ua-compatible" content="IE=edge" >
4、多個模式的指定。我們可以用逗號分割多個版本,這種情況下,瀏覽器會從這個列表中選擇一個他所支持的最高版本來使用標准模式進行渲染。
如下面的例子,在IE8進行瀏覽時,將會使用IE7的標准模式進行渲染,因為他本身不支持IE9和IE10。
<meta http-equiv="x-ua-compatible" content="IE=7,9,10" >
參考:
http://www.cnblogs.com/cocowool/archive/2013/04/25/3043832.html
http://www.cnblogs.com/nidilzhang/archive/2010/01/09/1642887.html
http://msdn.microsoft.com/en-us/library/jj676915(v=vs.85).aspx
<!-----------------------------------------------------------------華麗分割線-------------------------------------------------------------------------->
在網站開發中不免因為各種兼容問題苦惱,針對兼容問題,其實IE給出了解決方案Google也給出了解決方案
百度也應用了這種方案去解決IE的兼容問題
百度源代碼如下
<!Doctype html>
<html xmlns=http://www.w3.org/1999/xhtml xmlns:bd=http://www.baidu.com/2010/xbdml>;;
<head>
<meta http-equiv=Content-Type content=“text/html;charset=utf-8″>
<meta http-equiv=X-UA-Compatible content=IE=EmulateIE7>
<title>百度一下,你就知道 </title>
<script>var wpo={start:new Date*1,pid:109,page:‘superpage’}</script>
<meta http-equiv=X-UA-Compatible content=IE=EmulateIE7>
可以打開百度,右鍵查看源碼看下!我們可以看下文件頭是否存在這樣一行代碼!
這句話的意思是強制使用IE7模式來解析網頁代碼!
在這里送上幾種IE使用模式!
<meta http-equiv=“X-UA-Compatible” content=“IE=8″>
2. Google Chrome Frame也可以讓IE用上Chrome的引擎:
<meta http-equiv=“X-UA-Compatible” content=“chrome=1″ />
3.強制IE8使用IE7模式來解析
<meta http-equiv=“X-UA-Compatible” content=“IE=EmulateIE7″><!– IE7 mode –>
//或者
<meta http-equiv=“X-UA-Compatible” content=“IE=7″><!– IE7 mode –>
4.強制IE8使用IE6或IE5模式來解析
<meta http-equiv=“X-UA-Compatible” content=“IE=6″><!– IE6 mode –>
<meta http-equiv=“X-UA-Compatible” content=“IE=5″><!– IE5 mode –>
5.如果一個特定版本的IE支持所要求的兼容性模式多於一種,如:
<meta http-equiv=“X-UA-Compatible” content=“IE=5; IE=8″ />
二.設定網站服務器以指定預設兼容性模式
如果服務器是自己的話,可以在服務器上定義一個自訂標頭來為它們的網站預設一個特定的文件兼容性模式。這個特定的方法取決於你的網站服務器。
錄入,下列的 web.config文件使Microsoft Internet Information Services (IIS)能定義一個自訂標頭以自動使用IE7 mode來編譯所有網頁。
另外還有一起其他的解決方案,例如google的
ie7 – js中是一個JavaScript庫(解決IE與W3C標准的沖突的JS庫),使微軟的Internet Explorer的行為像一個Web標准兼容的瀏覽器,支持更多的W3C標准,支持CSS2、CSS3選擇器。
它修復了許多的HTML和CSS問題,並使 得透明PNG在IE5、IE6下正確顯示。
使IE5,IE6兼容到IE7模式(推薦)
<!–[if lt IE 7]>
<script src=”http://ie7-js.googlecode.com/svn/version/2.0(beta)/IE7.js” type=”text/javascript”></script>
<![endif]–>
使IE5,IE6,IE7兼容到IE8模式
<!–[if lt IE 8]>
<script src=”http://ie7-js.googlecode.com/svn/version/2.0(beta)/IE8.js” type=”text/javascript”></script>
<![endif]–>
使IE5,IE6,IE7,IE8兼容到IE9模式
<!–[if lt IE 9]>
<script src=”http://ie7-js.googlecode.com/svn/version/2.1(beta4)/IE9.js”></script>
<![endif]–>
解決PNG顯示問題
只需將透明png圖片命名為*-trans.png
需要注意的是:此方法對背景平鋪(background-repeat)和背景(background-position)無法起到任何作用,默認會占滿整個容器。
轉載:http://hi.baidu.com/myplan/blog/item/cdb09dfa1fa748a99f514626.html
三、<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
創建html5時發現這么一句話,不知其什么意思,百度如下:
這樣寫可以達到的效果是如果安裝了GCF,則使用GCF來渲染頁面,如果沒安裝GCF,則使用最高版本的IE內核進行渲染。Google Chrome Frame(谷歌內嵌瀏覽器框架GCF)。
這個插件可以讓用戶的IE瀏覽器外不變,但用戶在瀏覽網頁時,實際上使用的是Google Chrome瀏覽器內核,而且支持IE6、7、8等多個版本的IE瀏覽器。