Зачем использовать X-UA-совместимый IE=Edge больше?



в последнее время я прошел несколько онлайн-курсов, и я все еще вижу, что некоторые преподаватели по умолчанию добавляют следующий мета-тег в верхнюю часть своих документов:



<meta http-equiv="X-UA-Compatible" content="IE=edge">


думается, что это так же важно и полезно, как <meta charset="UTF-8">.



но почему?



по данным Microsoft в современной.документации, т. е. это "лучшая практика", которая "гарантирует, что Internet Explorer использует последний движок". Ладно, достаточно честно.



, если вы следуете блок-схема на MSDN это ясно показывает, что документ без 'X-UA-совместимой информации пересылается в Настройки пользователя "просмотр совместимости", и если это не установить, то просто следуйте !Объявление DOCTYPE.

другими словами, если у пользователя нет некоторых настроек просмотра совместимости,IE будет просто следовать за вашим !DOCTYPE и использовать последний режим стандартов Вашего браузера для рендеринга во всяком случае... Нет необходимости в X-UA-Compatible IE=Edge заявление на всех.



как говорит MSDN:"используйте объявление типа документа HTML5 для включения пограничного режима".



так при каких обстоятельствах это X-UA-Compatible IE=Edge нужен?

966   4  

4 ответов:

как указывает ответ @ David, если вы не размещаете сайт в зоне "местная интрасеть", есть очень мало причин включать <meta http-equiv="X-UA-Compatible" content="IE=edge"> на ваших веб-страницах, и (согласно рекомендации по лучшей практике Microsoft) абсолютно нет причин включать его в HTML. (Вы должны поместить его в конфигурацию сервера или заголовки сайта-не в самом HTML.)

если вы планируете использовать X-UA-Compatible в любом месте вашего проекта, вы должны помнить, что совместимость Просмотр влияет только на IE8, 9 и 10. Он был представлен только в IE8 и был отключен в IE11.

также имейте в виду, что IE11 является единственная официально поддерживаемая версия IE на данный момент. Все старые версии следует считать небезопасными.

если это не было достаточной причиной, чтобы убедить вас не использовать его, считайте, что Microsoft заявляет, что IE8 и выше уже автоматически отображаются в стандартном режиме, когда a <!DOCTYPE присутствует, что делает его еще более бессмысленный.

вы можете сами увидеть поток, который IE принимает, чтобы решить, какой режим документа использовать:

enter image description hereenter image description here

Как видите, если нет X-UA-Compatible присутствует мета-тег или заголовок HTTP, он проверяет настройки пользователя "вид совместимости". Если у пользователя нет ни одного для вашего сайта, то IE проверяет наличие <!DOCTYPE декларации. Если он находит его, он автоматически использует последний режим стандартов (он же "EmulateIEx"). Если это не так, то это возвращается в режим причуд.

еще больше причин, почему вы не должны использовать метатег "X-UA-Compatible":

цитаты из Microsoft (выделено мной):

это замедляет начальную визуализацию страницы...

Когда Интернет Проводник встречает X-UA-совместимый мета-тег, который он начинает использовать с помощью движка назначенной версии. это приводит к снижению производительности потому что браузер должен остановить и перезапустить анализируя содержание.

он был разработан только для временного использования...

директива X-UA-Compatible-это инструмент, позволяющий приложениям работать в последней версии Internet Explorer при обновлении применение.

здесь лучшие способы реализации X-UA-совместимый если вам это абсолютно необходимо...

лучшей практикой является X-UA-совместимый HTTP-заголовок. Добавление директивы в заголовок ответа указывает Internet Explorer, какой механизм следует использовать перед началом синтаксического анализа содержимого. Это должно быть настроено на сервере веб-сайта.

теперь только IE11 официально поддерживается на современных операционные системы...

начиная с 12 января 2016 года только самая последняя версия Internet Explorer, доступная для поддерживаемой операционной системы, будет получать техническую поддержку и обновления для системы безопасности. Internet Explorer 11 последняя версия Internet Explorer, и будет продолжать получать обновления безопасности, исправления совместимости и техническую поддержку на Windows 7, Windows 8.1 и Windows 10.

In реальность, единственная причина включить X-UA-Compatible метатег в вашем HTML должен был переопределить настройки пользователя "просмотр совместимости" для вашего сайта. Почти в каждом случае пользователь не будет изменять эти настройки (почему бы и нет?).

короче: не делайте этого.

Если пользователь просматривает страницу, расположенную в зоне " локальная интрасеть "(например, в корпоративной интрасети)," представление совместимости " включается по умолчанию. Это когда я использовал "X-UA-совместимый", чтобы заставить IE использовать последний движок.

пока он установлен на "край", он проверяет как HTML5, и мне сказали, что он только заставляет IE повторно отображать страницу, если сайт уже отображал ее в режиме совместимости. Тем не менее, поставив его в конфигурации сервера (.htaccess и т. д.) лучше, чем положить в HTML каждой страницы.

Анри Сивонен сделал очень полезную ссылку о том, как браузеры выбрали режим рендеринга. Вы можете прочитать все это там:https://hsivonen.fi/doctype/.

Comments

    Ничего не найдено.