Есть ли способ сделать проверку If IE8 с метатегами? - PullRequest
3 голосов
/ 18 августа 2011

или, может быть, JavaScript? У меня есть макет, который хорошо работает в ie7 + современных браузерах. Но не ie8.

Я узнал, что могу использовать это:

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

и IE8 претендует на то, чтобы быть IE7, и отображает все правильно, но затем он портит все хорошие браузеры (на основе webkit, на основе gecko и т.д.).

Я знаю, что в теле вы можете делать такие вещи, как:

<!--[if IE 8]>
    ie8 specific javascript, html, or css
<![endif]-->

Но я попробовал это в <head> вокруг метатега, но это не сработало

1 Ответ

4 голосов
/ 18 августа 2011

Я обнаружил, что, поскольку я использую ruby ​​на рельсах, я могу просто спросить переменную запроса, какой браузер запросил эту страницу.

<% if request.env["HTTP_USER_AGENT"] =~ /MSIE 8.0/%>
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" >
<% end %>
...