Если IE8 находится в режиме IE7, то браузер корректен, чтобы сообщать о себе как IE7;В конце концов, целью режима IE7 является визуализация страницы точно так, как это сделал бы IE7, поэтому, если вы делаете обнаружение в браузере, вам нужно сказать, что это IE7, потому что с поведением IE7 вам придется иметь дело (тот факт, что в IE8 есть ошибки в IE7 и что он не совсем такой же, как в реальном IE7, - это еще одна тема).
То, что вы, похоже, хотите, - это чтобы IE8 действительно находился в режиме IE8,Это разумная вещь, которую нужно хотеть!
Вы сказали, что используете:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">
Вы пробовали это вместо этого:
<meta http-equiv="X-UA-Compatible" content="IE=edge">
'edge' говорит IEиспользовать самый современный механизм рендеринга, который должен заставить IE8 перейти в обычный режим IE8.Может быть, это будет работать лучше, чем указывать IE8 эмулировать себя?
Кстати, если у вас возникли проблемы на компьютерах в вашей локальной сети, когда IE8 возвращается в режим IE7, когда вы этого не ожидаете, будьтеПомните, что в IE8 есть параметр конфигурации, который указывает «всегда использовать режим IE7 для сайтов интрасети».Microsoft предоставила эту функцию, чтобы помочь с обратной совместимостью пользовательских сайтов интрасети, которые не очень хорошо обновились до IE8, но, честно говоря, это вызывает больше хлопот, чем экономит.Если это проблема, и вы не можете решить ее по-другому, вы можете найти самый простой ответ - просто зайти на все машины в вашей сети и изменить настройки конфигурации (конечно, в зависимости от размера вашей сети!).