Více na
Co dělá <meta http-equiv="X-UA-Compatible" content="IE=edge">?
Jaký je rozdíl, když jedna webová stránka začíná slovy
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
a Pokud stránka začíná slovy
<!DOCTYPE html>
<html>
<head>
<!-- without X-UA-Compatible meta -->
Pokud v tom není žádný rozdíl, předpokládám, že mohu ignorovat metazáhlaví X-UA-Compatible
, protože chci, aby se stránka zobrazovala v nejstandardnějším režimu ve všech verzích IE.
1374
3
Aktualizace z října 2015
Tato odpověď byla zveřejněna před několika lety a nyní by otázka měla znít: Měli byste vůbec uvažovat o použití značky
X-UA-Compatible
na svých stránkách? vzhledem ke změnám, které Microsoft provedl ve svých prohlížečích (více o nich níže). V závislosti na tom, jaké prohlížeče Microsoft podporujete, nemusíte nadále používat značkuX-UA-Compatible
. Pokud potřebujete podporovat IE9 nebo IE8, pak bych doporučoval značku používat. Pokud podporujete pouze nejnovější prohlížeče (IE11 a/nebo Edge), pak bych zvážil úplné vypuštění této značky. Pokud používáte Twitter Bootstrap a potřebujete eliminovat varování při ověřování, musí se tento tag objevit v uvedeném pořadí. Další informace naleznete níže:Metaznačka
X-UA-Compatible
umožňuje autorům webu zvolit, v jaké verzi prohlížeče Internet Explorer se má stránka vykreslovat. IE11 provedl změny v těchto režimech; viz níže uvedená poznámka k IE11. Prohlížeč Microsoft Edge, který nahradil IE11, respektuje metaznačkuX-UA-Compatible
pouze za určitých okolností. Viz níže uvedená poznámka k prohlížeči Microsoft Edge. Podle společnosti Microsoft by se při použití značkyX-UA-Compatible
měla nacházet co nejvýše vhlavě
dokumentu: Pokud používáte značku X-UA-Compatible META, měli byste ji umístit co nejblíže horní části stránky'HEAD. Internet Explorer začne interpretovat značky pomocí nejnovější verze. Když Internet Explorer narazí na značku X-UA-Compatible META, začne znovu používat engine určené verze'. To má vliv na výkon, protože prohlížeč se musí zastavit a znovu začít analyzovat obsah. Zde jsou vaše možnosti:Použijte
content=
"IE=edge,chrome=1"
Přeskočit ostatníX-UA-Compatible
režimyV adresním řádku IE9 se nezobrazuje tlačítko [Compatibility View][MSICON]
a na stránce se také nezobrazuje změť nemístných nabídek, obrázků a textových polí.
Tato metaznačka je nutná pro zapnutí
javascript::JSON.parse()
v IE8(i když je přítomen ``).
Vykreslování/vykonávání moderního HTML/CSS/JavaScriptu je validnější (hezčí).
Výkon
Vykreslovací jádro [Trident][] by mělo běžet rychleji v režimu edge. Vykreslovací jádro [Trident]: https://en.wikipedia.org/wiki/Internet_Explorer
Použití
Ve vašem HTML
IE=edge
znamená, že IE by měl používat nejnovější (edge) verzi svého vykreslovacího jádra.chrome=1
znamená, že IE by měl používat vykreslovací jádro Chrome, pokud je nainstalováno. Nebo lépe v konfiguraci vašeho webového serveru:(viz také odpověď RiaD's).
Apache podle návrhu pixeline.
Nginx podle návrhu Stef Pause server {
...
Varnish proxy podle návrhu Lucas Riutzel sub vcl_deliver { if( resp.http.Content-Type ~ "text/html" ) { set resp.http.X-UA-Compatible = "IE=edge,chrome=1"; } }
IIS (od verze 7)
Společnost Microsoft doporučuje Edge mode od IE11
Jak si všimla Lynda (viz komentáře), Compatibility changes in IE11 doporučuje Edge mode:
Postoj společnosti Microsoft však nebyl jasný. Jiná [stránka MSDN nedoporučuje Edge mode][noEdge]:
Pomocí této funkce donutíte IE skrýt otravné tlačítko kompatibility prohlížeče v adresním řádku: