Meta http equiv x ua compatible content ie edge что это
Если нет никакой разницы, я полагаю, что могу просто игнорировать X-UA-Compatible meta header, так как я просто хочу, чтобы он отображался в большинстве стандартных режимов во всех версиях IE.
Обновление Октября 2015
этот ответ был опубликован несколько лет назад и теперь вопрос действительно должен быть если вы даже рассмотрите возможность использования X-UA-Compatible тег на вашем сайте? С изменениями, которые Microsoft внесла в свои браузеры (подробнее об этом ниже).
в зависимости от того, какие браузеры Microsoft вы поддерживаете, вам может не понадобиться продолжать использовать X-UA-Compatible тег. Если вам нужно поддержать IE9 или IE8, то я бы рекомендуется использовать тег. Если вы поддерживаете только последние браузеры (IE11 и/или Edge), я бы рассмотрел возможность удаления этого тега вообще. Если вы используете Twitter Bootstrap и должны устранить предупреждения проверки, этот тег должен отображаться в указанном порядке. Дополнительная информация ниже:
на X-UA-Compatible мета-тег позволяет веб-авторам выбрать версию Internet Explorer, в которой должна отображаться страница. IE11 внес изменения в эти режимы; см. Примечание IE11 ниже. Microsoft Edge, браузер, который будет выпущен после IE11, будет только соблюдать X-UA-Compatible meta tag при определенных обстоятельствах. См. Примечание Microsoft Edge ниже.
согласно Microsoft, при использовании X-UA-Compatible тег, он должен быть как можно выше в документе head :
если вы используете метатег, совместимый с X-UA, вы хотите разместить его как можно ближе к верхней части головы страницы. Internet Explorer начинает интерпретацию разметка с использованием последней версии. Когда Internet Explorer встречает метатег, совместимый с X-UA, он запускается с использованием движка указанной версии. Это хит производительности, потому что браузер должен остановить и перезапустить анализ содержимого.
вот ваши варианты:
- "IE=edge"
- "IE=11"
- "IE=EmulateIE11"
- "IE=10"
- "IE=EmulateIE10"
- "IE=9"
- " IE=EmulateIE9
- "IE=8"
- "IE=EmulateIE8"
- "IE=7"
- "IE=EmulateIE7"
- "IE=5"
чтобы попытаться понять, что каждый из них означает, вот определения, предоставленные Microsoft:
пограничный режим указывает Internet Explorer отображать содержимое в самом высоком доступном режиме. В Internet Explorer 9 это эквивалентно режиму IE9. Если будущий выпуск Internet Explorer поддерживает более высокий режим совместимости, страницы, настроенные на режим edge, будут отображаться в самом высоком режиме, поддерживаемом этим версия. Эти же страницы по-прежнему будут отображаться в режиме IE9 при просмотре с помощью Internet Explorer 9. Internet Explorer поддерживает несколько режимов совместимости документов, которые включают различные функции и могут влиять на способ отображения содержимого:
режим IE11 обеспечивает самую высокую поддержку, доступную для установленных и новых отраслевых стандартов, включая HTML5, CSS3 и другие.
режим IE10 обеспечивает самую высокую поддержку доступно для установленных и новых отраслевых стандартов, включая HTML5, CSS3 и другие.
режим IE9 обеспечивает самую высокую поддержку, доступную для установленных и новых отраслевых стандартов, включая HTML5 (рабочий проект), спецификации каскадных таблиц стилей W3C уровня 3 (рабочий проект), спецификации масштабируемой векторной графики (SVG) 1.0 и другие. [Примечание редактора: IE 9 не поддержка CSS3 анимации].
режим IE8 поддерживает многие установленные стандарты, включая спецификацию уровня 2.1 каскадных таблиц стилей W3C и API селекторов W3C; он также обеспечивает ограниченную поддержку спецификации уровня 3 каскадных таблиц стилей W3C (рабочий проект) и других новых стандартов.
режим IE7 отображает содержимое так, как если бы оно отображалось в стандартном режиме Internet Explorer 7, независимо от того, содержит ли страница директиву.
режим эмуляции IE9 сообщает Internet Explorer использовать директиву, чтобы определить, как отображать содержимое. Директивы режима стандартов отображаются в режиме IE9, а директивы режима quirks - в режиме IE5. В отличие от режима IE9, режим эмуляции IE9 уважает директиву.
эмуляция режима IE8 сообщает Internet Explorer использовать директиву, чтобы определить, как отображать содержимое. Директивы режима стандартов отображаются в директивах режима IE8 и режима quirks отображаются в режиме IE5. В отличие от режима IE8, режим эмуляции IE8 уважает директиву.
режим эмуляции IE7 сообщает Internet Explorer использовать директиву, чтобы определить, как отображать содержимое. Директивы режима стандартов отображаются в режиме стандартов Internet Explorer 7, а директивы режима quirks - в режиме IE5. В отличие от режима IE7, режим эмуляции IE7 уважает директиву. Для многих веб-сайтов это предпочтительный режим совместимости.
режим IE5 отображает содержимое так, как если бы оно отображалось в режиме причуд Internet Explorer 7, что очень похоже на то, как содержимое отображалось в Microsoft Internet Explorer 5.
В IE10 ПРИМЕЧАНИЕ: начиная с IE10, режим причуд ведет себя иначе, чем в более ранних версиях браузера. В IE9 и более ранних версиях режим quirks ограничивал веб-страницу функциями, поддерживаемыми IE5.5. В IE10, режим quirks соответствует различиям, указанным в спецификации HTML5.
лично я всегда выбираю http-equiv="X-UA-Compatible" content="IE=edge" мета-тег, так как в старых версиях много ошибок, и я не хочу, чтобы IE решил перейти в "режим совместимости" и показать мой сайт как IE7 против IE8 или 9. Я всегда предпочитаю последнюю версию IE.
начиная с IE11, режим edge является предпочтительным режимом документа; он представляет собой самую высокую поддержку современных стандартов, доступных для браузера.
используйте объявление типа документа HTML5 для включения пограничного режима:
пограничный режим был введен в Internet Explorer 8 и был доступен в каждом последующем выпуске. Обратите внимание, что функции, поддерживаемые режимом edge, ограничены функциями, поддерживаемыми конкретной версией браузера содержание.
начиная с IE11, режимы документов устарели и больше не должны использоваться, кроме как на временной основе. Не забудьте обновить сайты, которые используют устаревшие функции и режимы документов для отражения современных стандартов.
если вы должны настроить конкретный режим документа так, чтобы ваш сайт функционировал при его доработке для поддержки современных стандартов и функций, имейте в виду, что вы используете переходную функцию, которая может быть недоступна в будущем версии.
если вы в настоящее время используете X-UA-совместимый заголовок для целевого режима устаревшего документа, возможно, ваш сайт не будет отражать лучший опыт, доступный с IE11.
Microsoft Edge (замена для Internet Explorer, который поставляется в комплекте с Windows 10)
информацию о X-UA-Compatible метатег для версии IE" Edge". Из Microsoft:
представляем" живой " режим документа Edge
как мы объявили в августе 2013 года, мы не одобряем режимы документов с IE11. С нашими последними обновлениями платформы потребность в устаревших режимах документов в основном ограничивается корпоративными устаревшими веб-приложениями. С новыми архитектурными изменениями, эти устаревшие режимы документов будут изолированы от изменений в "живом" режиме Edge, которая поможет обеспечить гораздо более высокий уровень совместимости для клиентов, которые зависят от этих режимов и помогают нам двигаться еще быстрее по улучшениям в Edge. Следующая основная версия IE по-прежнему будет соблюдать режимы документов, обслуживаемые сайтами интрасети, сайтами в списке просмотра совместимости и при использовании только с режимом предприятия.
публичные интернет-сайты будут отображаться с новой платформой пограничного режима (игнорируя X-UA-совместимый). Это наша цель, что Edge является" живым " режимом документа отсюда, и никакие другие режимы документов не будут представился идя вперед.
С изменениями в Microsoft Edge, чтобы больше не поддерживать режимы документов в большинстве случаев, Microsoft имеет инструмент для сканирования вашего сайта, чтобы проверить и посмотреть, если он имеет код, который не совместим с Edge.
Chrome=1 Информация для IE
есть еще chrome=1 что вы можете использовать или использовать вместе с одним из вышеперечисленных вариантов, таких как: . chrome=1 для Chrome от Google Фрейм, который определяется как:
Google Chrome Frame-это плагин для браузера с открытым исходным кодом. Пользователи, у которых установлен плагин, имеют доступ к открытым веб-технологиям Google Chrome и speedy JavaScript engine при открытии страниц в браузере.
Google Chrome Frame легко улучшает ваш опыт просмотра в Internet Explorer. Он отображает сайты с поддержкой Google Chrome Frame с использованием технологии рендеринга Google Chrome, предоставляя вам доступ к последние функции HTML5, а также функции производительности и безопасности Google Chrome, никоим образом не прерывая обычное использование браузера.
когда Google Chrome Frame установлен, веб-просто становится лучше без необходимости думать об этом.
но для этого плагин для работы вы должны использовать chrome=1 на X-UA-Compatible мета-тег.
более подробную информацию о Chrome Frame можно найти здесь.
Примечание: Google Chrome Frame работает только для IE6 через IE9, и был уволен 25 февраля 2014 года. Более подробную информацию можно найти здесь. Спасибо @mck за ссылку.
проверка:
в HTML5:
XHTML
нет проблем с проверка при использовании пока тег правильно закрыт (т. е. /> vs > ).
Twitter Bootstrap
этот тег был настоятельно рекомендован командой Bootstrap, по крайней мере, с 2014 года, и Bootlint, Линтер автор команды twbs продолжает бросать предупреждение когда тег пропущен. Linter различает предупреждения и ошибки, и как таковая серьезность пропуска этого тег можно считать незначительным.
для получения дополнительной информации о требованиях Twitter Bootstrap см. Проект bootlint страница wiki.
Делаю верстку своей старой работы, верстать начал относительно недавно.
В коде нашел эти две строки, не могу вспомнить за что они отвечают.
И нужно ли их обязательно вставлять всегда?
Спасибо.
- Вопрос задан более трёх лет назад
- 8031 просмотр
X-UA-Compatible указывает версию IE (в данном случае edge)
width=device-width - указывает браузеру, что нужна ширина области просмотра такая же, как и ширина экрана
initial-scale=1.0 - устанавливает начальный масштаб страницы. В данном случае 1, т.е. 100%.
большое спасибо за развернутый ответ :)
а не подскажите еще, что означают эти строки в самом начале?
raulvodov, исходя из логики, при определенной версии IE будет добавляться класс определенный в (могу ошибаться)
Алекс, все правильно, это ie conditional comments
в условии операторы:
lt (less than) - меньше
lte (less than or equal)- меньше или равно
gt (greater than)- больше
gte (greater than or equal)- больше или равно
без оператора просто равно
Первый тег настоятельно рекомендую исопльзовать, а второй используйте по надобности, в зависимости от того, нужны ли вам браузера IE
Большое спасибо за подробный ответ и статьи, почитал, примерно понял :)
Не подскажите еще, эти строки в самом начале так же как-то связаны с IE и так же наверное лучше оставить для поддержки?
- это указывает на версию html языка. В данном случае, html 5
azerphoenix, ага еще раз спасибо, доктайп случайно добавил, имел в виду именно условные комментарии. Не подскажите насколько актуальны и практичны данные строки условных комментариев? Лишними не будут думаю?
raulvodov, конечно, лишними не будут. Да и многое зависит от заказчика. если ему не так важна поддержка IE, то можете и проигнорировать. Тут уже важны предпочтения клиента.
azerphoenix, я пока больше для себя верстаю, т.е. я сам дизайнер, нарабатываю руку в свободное время, верстая свои макеты :) одного клиента взял несколько месяцев назад, был очень срочный проект, днями и ночами не спал, сверстал, заказчик доволен, потом был несколько месяцев перерыв, т.к. завалы в работе, сейчас пытаюсь освежить память.
raulvodov, для себя, однозначно стоит выработать определенный алгоритм и адаптировать верстку под IE. Обычно, это самые капризные браузеры (
azerphoenix, пока что даже не понимаю, как его выработать и с какой стороны подступиться. С другой стороны вроде последние версии IE без проблем и уже насколько я слышал не стоит сильно с этим заморачиваться, как это было раньше.
Не подскажите насколько актуальны и практичны данные строки условных комментариев? Лишними не будут думаю?
Если вы не будете использовать их, то конечно они лишние.
Обратите внимание, что в каждом теге свой набор классов lt-ie9 lt-ie8 lt-ie7. соответственно при таком использовании вы можете к css коде писать отдельные стили для разных версий IE
Если вы этого делать не собираетесь, то и условные комментарии вам не нужны.
Сергей delphinpro, т.е. сейчас они не играют никакой роли и будут работать только в случае, если я дополнительно в коде для них буду прописывать стили?
Мета тег X-UA-Compatible управляет режимом отображением страниц в браузерах IE8+.
Спецификация
Верс. | Раздел | |
---|---|---|
HTML | ||
2.0 | Associated Meta-information: META | Перевод |
3.2 | META | |
4.01 | The META element http-equiv = name [CI]. DTD: Transitional Strict Frameset | |
5.0 | 4.2.5 The meta element | |
5.1 | 4.2.5. The meta element | |
XHTML | ||
1.0 | Extensible HyperText Markup Language DTD: Transitional Strict Frameset | |
1.1 | Extensible HyperText Markup Language |
Синтаксис
Значения для IE8+
Значение тега | Описание режима работы IE8+ | Кодовое имя режима |
---|---|---|
IE=5 | Отображение содержимого в режиме совместимости IE5, отображает страницы так, как это делает браузер IE5.5 независимо от того, содержится ли на странице директива | Quirks mode (режим совместимости) |
IE=7 | Отображение содержимого в стандартном режиме IE7, отображает страницы так, как это делает браузер IE7 независимо от того, содержится ли на странице директива | IE 7 Standards mode (стандартный режим IE7) |
IE=EmulateIE7 | принуждает IE использовать директиву для задания способа отображения содержимого. Директивы стандартного режима отображаются в стандартном режиме IE7, а директивы режима совместимости отображаются в режиме IE5.5 (Quirks). | IE 7 Emulation mode (режим эмуляции IE7) |
IE=8 | Отображение содержимого в стандартном режиме IE8, отображает страницы так, как это делает браузер IE8 независимо от того, содержится ли на странице директива | IE 8 Standards mode (стандартный режим IE8) |
IE=EmulateIE8 | принуждает IE использовать директиву для задания способа отображения содержимого. Директивы стандартного режима отображаются в стандартном режиме IE8, а директивы режима совместимости отображаются в режиме IE5.5 (Quirks). | IE 8 Emulation mode (режим эмуляции IE8) |
IE=edge | всегда использует последний доступный стандартный режим отображения независимо от . | Edge mode (последний режим) |
Значения добавленные в IE9
Значение тега | Описание режима работы IE9 | Кодовое имя режима |
---|---|---|
IE=9 | Отображение содержимого в стандартном режиме IE9, отображает страницы так, как это делает браузер IE9 независимо от того, содержится ли на странице директива | IE 9 Standards mode (стандартный режим IE9) |
IE=EmulateIE9 | принуждает IE использовать директиву для задания способа отображения содержимого. Директивы стандартного режима отображаются в стандартном режиме IE9, а директивы режима совместимости отображаются в режиме IE5.5 (Quirks). | IE 9 Emulation mode (режим эмуляции IE9) |
Если директива не указана, IE ведет себя так, как будто указана директива режима совместимости (Quirks DOCTYPE).
12 Answers 12
November 2021 Update
As this answer is now 10+ years old my recommendation would be to leave this tag out altogether, unless you must support old legacy browsers.
October 2015 Update
This answer was posted several years ago and now the question really should be should you even consider using the X-UA-Compatible tag on your site? with the changes Microsoft has made to its browsers (more on those below).
Depending upon what Microsoft browsers you support you may not need to continue using the X-UA-Compatible tag. If you need to support IE9 or IE8, then I would recommend using the tag. If you only support the latest browsers (IE11 and/or Edge) then I would consider dropping this tag altogether. If you use Twitter Bootstrap and need to eliminate validation warnings, this tag must appear in its specified order. Additional info below:
The X-UA-Compatible meta tag allows web authors to choose what version of Internet Explorer the page should be rendered as. IE11 has made changes to these modes; see the IE11 note below. Microsoft Edge, the browser that replaced IE11, only honors the X-UA-Compatible meta tag in certain circumstances. See the Microsoft Edge note below.
According to Microsoft, when using the X-UA-Compatible tag, it should be as high as possible in your document head :
If you are using the X-UA-Compatible META tag you want to place it as close to the top of the page's HEAD as possible. Internet Explorer begins interpreting markup using the latest version. When Internet Explorer encounters the X-UA-Compatible META tag it starts over using the designated version's engine. This is a performance hit because the browser must stop and restart analyzing the content.
Here are your options:
- "IE=edge"
- "IE=11"
- "IE=EmulateIE11"
- "IE=10"
- "IE=EmulateIE10"
- "IE=9"
- "IE=EmulateIE9
- "IE=8"
- "IE=EmulateIE8"
- "IE=7"
- "IE=EmulateIE7"
- "IE=5"
To attempt to understand what each means, here are definitions provided by Microsoft:
Internet Explorer supports a number of document compatibility modes that enable different features and can affect the way content is displayed:
- Edge mode tells Internet Explorer to display content in the highest mode available. With Internet Explorer 9, this is equivalent to IE9 mode. If a future release of Internet Explorer supported a higher compatibility mode, pages set to edge mode would appear in the highest mode supported by that version. Those same pages would still appear in IE9 mode when viewed with Internet Explorer 9. Internet Explorer supports a number of document compatibility modes that enable different features and can affect the way content is displayed:
- IE11 mode provides the highest support available for established and emerging industry standards, including the HTML5, CSS3 and others.
- IE10 mode provides the highest support available for established and emerging industry standards, including the HTML5, CSS3 and others.
- IE9 mode provides the highest support available for established and emerging industry standards, including the HTML5 (Working Draft), W3C Cascading Style Sheets Level 3 Specification (Working Draft), Scalable Vector Graphics (SVG) 1.0 Specification, and others. [Editor Note: IE 9 does not support CSS3 animations].
- IE8 mode supports many established standards, including the W3C Cascading Style Sheets Level 2.1 Specification and the W3C Selectors API; it also provides limited support for the W3C Cascading Style Sheets Level 3 Specification (Working Draft) and other emerging standards.
- IE7 mode renders content as if it were displayed in standards mode by Internet Explorer 7, whether or not the page contains a directive.
- Emulate IE9 mode tells Internet Explorer to use the directive to determine how to render content. Standards mode directives are displayed in IE9 mode and quirks mode directives are displayed in IE5 mode. Unlike IE9 mode, Emulate IE9 mode respects the directive.
- Emulate IE8 mode tells Internet Explorer to use the directive to determine how to render content. Standards mode directives are displayed in IE8 mode and quirks mode directives are displayed in IE5 mode. Unlike IE8 mode, Emulate IE8 mode respects the directive.
- Emulate IE7 mode tells Internet Explorer to use the directive to determine how to render content. Standards mode directives are displayed in Internet Explorer 7 standards mode and quirks mode directives are displayed in IE5 mode. Unlike IE7 mode, Emulate IE7 mode respects the directive. For many web sites, this is the preferred compatibility mode.
- IE5 mode renders content as if it were displayed in quirks mode by Internet Explorer 7, which is very similar to the way content was displayed in Microsoft Internet Explorer 5.
IE10 NOTE: As of IE10, quirks mode behaves differently than it did in earlier versions of the browser. In IE9 and earlier versions, quirks mode restricted the webpage to the features supported by IE5.5. In IE10, quirks mode conforms to the differences specified in the HTML5 specification.
Personally, I always choose the http-equiv="X-UA-Compatible" content="IE=edge" meta tag, as older versions have plenty of bugs, and I do not want IE to decide to go into "Compatibility mode" and show my site as IE7 vs IE8 or 9. I always prefer the latest version of IE.
Starting with IE11, edge mode is the preferred document mode; it represents the highest support for modern standards available to the browser.
Use the HTML5 document type declaration to enable edge mode:
Edge mode was introduced in Internet Explorer 8 and has been available in each subsequent release. Note that the features supported by edge mode are limited to those supported by the specific version of the browser rendering the content.
Starting with IE11, document modes are deprecated and should no longer be used, except on a temporary basis. Make sure to update sites that rely on legacy features and document modes to reflect modern standards.
If you must target a specific document mode so that your site functions while you rework it to support modern standards and features, be aware that you're using a transitional feature, one that may not be available in future versions.
If you currently use the x-ua-compatible header to target a legacy document mode, it's possible your site won't reflect the best experience available with IE11.
Microsoft Edge (Replacement for Internet Explorer that comes bundled with Windows 10)
Information on X-UA-Compatible meta tag for the "Edge" version of IE. From Microsoft:
Introducing the “living” Edge document mode
As we announced in August 2013, we are deprecating document modes as of IE11. With our latest platform updates, the need for legacy document modes is primarily limited to Enterprise legacy web apps. With new architectural changes, these legacy document modes will be isolated from changes in the “living” Edge mode, which will help to guarantee a much higher level of compatibility for customers who depend on those modes and help us move even faster on improvements in Edge. IE will still honor document modes served by intranet sites, sites on the Compatibility View list, and when used with Enterprise Mode only.
Public Internet sites will be rendered with the new Edge mode platform (ignoring X-UA-Compatible). It is our goal that Edge is the "living" document mode from here out and no further document modes will be introduced going forward.
With the changes in Microsoft Edge to no longer support document modes in most cases, Microsoft has a tool to scan your site to check and see if it has code that is not compatible with Edge.
Chrome=1 Info for IE
There is also chrome=1 that you can use or use together with one of the above options like: . chrome=1 is for Google's Chrome Frame which is defined as:
Google Chrome Frame is an open source browser plug-in. Users who have the plug-in installed have access to Google Chrome's open web technologies and speedy JavaScript engine when they open pages in the browser.
Google Chrome Frame seamlessly enhances your browsing experience in Internet Explorer. It displays Google Chrome Frame enabled sites using Google Chrome’s rendering technology, giving you access to the latest HTML5 features as well as Google Chrome’s performance and security features without in any way interrupting your usual browser usage.
When Google Chrome Frame is installed, the web just gets better without you having to think about it.
But for that plug-in to work you must use chrome=1 in the X-UA-Compatible meta tag.
More info on Chrome Frame can be found here.
Note: Google Chrome Frame only works for IE6 through IE9, and was retired on February 25, 2014. More info can be found here. Thanks to @mck for the link.
Validation:
HTML5:
XHTML
There isn't an issue with validation when using as long as the tag is properly closed (i.e. /> vs > ).
Twitter Bootstrap (V3 and below)
This tag has been strongly recommended by the Bootstrap team since at least 2014, and Bootlint, the linter authored by the twbs team continues to throw a warning when the tag is omitted. The linter distinguishes between warnings and errors, and as such the severity of omitting this tag may be considered minor.
For more information on X-UA-Compatible see Microsoft's Website Defining Document Compatibility.
For more information on Twitter Bootstrap requirements, see the bootlint project wiki page.
Прагма директива X-UA-Compatible призывает Internet Explorer работать в определённом режиме документа. Остальные браузеры должны игнорировать данную прагма директиву.
Значения атрибута «content»
Атрибут « content » должен иметь значение « IE=[режим_документа] », состоящее из регистронезависимых ASCII-символов. В этом значении должен указываться один из режимов документов, который определяет возможности доступные странице (CSS и JS функционал):
7 Включает стандартный режим IE 7. Тип документа игнорируется.
8 Включает стандартный режим IE 8. Тип документа игнорируется.
9 Включает стандартный режим IE 9. Тип документа игнорируется.
EmulateIE7 В случае, если указан тип документа, включается стандартный IE 7, в противном случае включается режим IE 5.
EmulateIE8 В случае, если указан тип документа, включается стандартный IE 8, в противном случае включается режим IE 5.
EmulateIE9 В случае, если указан тип документа, включается стандартный IE 9, в противном случае включается режим IE 5.
Edge Включает наиболее новый из доступных режимов документа. (Для IE 9 включается режим IE 9, для IE 8 включается режим IE 8.)
Синтаксис
Поддержка браузерами
Пример
Тег должен находиться в секции head страницы перед всеми остальными элементами, за исключением title и других мета-элементов. В противном случае он игнорируется!
If there is no difference, I suppose I can just ignore the X-UA-Compatible meta header, since I just want it to be rendered in most standard mode in all IE versions.
Читайте также: