19

Я использую доктайп HTML5 с X-UA-Compatible мета-тег вблизи верхней:Force Internet Explorer 9 для использования IE 9 Режим

<!DOCTYPE html> 
<!--[if lt IE 7]> <html lang="en-us" class="ie6"> <![endif]--> 
<!--[if IE 7]> <html lang="en-us" class="ie7"> <![endif]--> 
<!--[if IE 8]> <html lang="en-us" class="ie8"> <![endif]--> 
<!--[if gt IE 8]><!--> <html lang="en-us"> <!--<![endif]--> 
<head> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
    ... 

Но Internet Explorer 9 для некоторых пользователей рендеринга страницы в совместимость. Я подозреваю, что это потому, что у них включен параметр «Показать все веб-сайты в режиме совместимости». Есть ли способ заставить IE9 использовать браузер IE9 и режим документа?

+1

Для тех, кто не может использовать заголовок HTTP: Я прочитал, что 'HTTP-эквив = "X-UA-Compatible" meta-тег должен быть тегом ** очень первым ** в разделе ''. Порядок заголовков HTTP не важен. – netzaffin

+0

Только добавление будет делать;) Для, например:

ответ

25

Оказывается, что решение установить X-UA-Compatible в заголовке HTTP, а не в формате HTML:

X-UA-Compatible: IE=edge,chrome=1 

Это заставит Internet Explorer использовать последний движок рендеринга, даже если " Показать все веб-сайты в режиме совместимости ".

+0

Я включил эту строку в мета, как показано на многих сайтах, но это не имело никакого эффекта. Помещение его в HTTP-заголовок, кажется, единственный способ, который работает надежно. –

+0

Да, я пришел к такому же выводу. Он должен быть объявлен в заголовке HTTP. –

+0

Что вы подразумеваете под заголовком http, у меня такая же проблема, если я помещаю его в мета в разделе главы, ничего не происходит – shorif2000

10

Он также работает с этим в <head> в HTML:

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

Это не работает для меня. Добавление заголовка в вышеупомянутый ответ было единственным решением. – davidjb

0

@netzaffin прав - если X-UA-Compatible является первым мета-тег в разделе HEAD, IE9 работает.

3

, пожалуйста, добавьте в раздел главы своего сайта, надеюсь, что это поможет.

<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> 
<meta http-equiv="X-UA-Compatible" content="IE=5, IE=7, IE=8, IE=9, IE=10" /> 
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8" /> 
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" /> 
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE10" /> 
1

Как сообщает JohnnyO, его необходимо отправить в виде заголовка. В PHP добавить это (перед любой другой вывод направляется):

<?php header('X-UA-Compatible: IE=edge,chrome=1'); ?> 

В Wordpress это, вероятно, будет лучше, если вы поместите его в самой первой строке в файле header.php до тех пор, пока вы не имеете никакого вывода (или ошибки), прежде чем этот файл будет отображаться, он должен работать.

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

ini_set('display_errors', 0); 
ini_set('log_errors', 1); 

В Wordpress, которые могут быть добавлен в верхней части файла wp-config.php.

Если у вас есть кеширование с чем-то вроде WP SuperCache или W3 Total Cache, все ставки не учитывают поведение вашего сайта - вам нужно будет немного поработать над добавлением дополнительных заголовков с помощью вашего кеширующего плагина.

5

Мета-тег X-UA-COMPATIBLE должен быть первым тегом внутри головы, иначе он не будет работать. См. Этот ответ: https://stackoverflow.com/a/22233206/3329906.

Весь этот материал заголовка http является излишним.

0

Только добавление

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

будет делать;)

Для например:

<!DOCTYPE html> 
<html lang="en-US" class="css3transitions"> 
<meta http-equiv="content-type" content="text/html;charset=UTF-8" /> 
<head> 
<meta charset="UTF-8" /> 
<meta http-equiv="X-UA-Compatible" content="IE=edge" /> 
+1

Почему этот метатег контента контента за пределами головы? –