Właśnie zainstalowałem wersję beta IE9 i na konkretnej stronie, którą utworzyłem (HTML5), IE9 przechodzi do trybu zgodności, chyba że ręcznie powiem, żeby tego nie robić. Próbowałem usunąć kilka części witryny, ale bez zmian. W tym usunięcie wszystkich CSS obejmuje. Na innej mojej stronie wszystko idzie dobrze.
Nie ustawiaj go też ręcznie, ponieważ wtedy IE9 zapamiętuje ustawienie użytkownika i nie możesz przywrócić go do trybu automatycznego (a przynajmniej nie znalazłem sposobu, nawet poprzez prywatne przeglądanie i opróżnianie pamięci podręcznej)
Tak czy siak. Witryna, w której przechodzi do trybu zgodności: http://alliancesatwar.com/guide/
Jedna, w której wyświetla się poprawnie: http://geuze.name/basement/ (Nie mogę opublikować więcej niż 1 hiperłącza)
Oba używają tego samego doctype
i wszystkich. Strony te mają wiele wspólnego (oprócz wyglądu) przy użyciu tego samego podstawowego szablonu (kodowanie, metatagi, doctype i ten sam javascript)
Byłoby wspaniale, gdyby ktoś miał dla mnie odpowiedź! Witryna HTML5 wyświetlająca się w trybie IE7 jest dość ... kiepska.
Odpowiedzi:
Działa dla mnie w IE9 documentMode.
Bez
X-UA-Compatible
nagłówka / meta, aby ustawić jawny tryb dokumentu, otrzymasz tryb oparty na:Możesz zmienić te ustawienia z „Narzędzia -> Ustawienia widoku zgodności” z menu IE. Oczywiście to menu jest teraz podstępnie ukryte, więc nie zobaczysz go, dopóki nie naciśniesz Alt.
Jako autor witryny, jeśli masz pewność, że Twoja witryna jest zgodna ze standardami (dobrze renderuje się w innych przeglądarkach i używa funkcji wąchania funkcji, aby zdecydować, które obejścia przeglądarki należy użyć), sugeruję użycie:
lub nagłówek HTTP:
aby uzyskać najnowszy renderer, niezależnie od używanej wersji IE.
źródło
<meta>
tagi muszą znajdować się w pierwszych 512 bajtach przetworzonego pliku HTML. Mówię „przetworzone”, ponieważ możesz tam mieć wszystkie rodzaje PHP, ale ważny jest renderowany kod. Dotarłem do miejsca, w którym umieściłem wszystkie moje komentarze<meta>
poniżej<meta>
tagów, aby nie złamać tego wymagania.włożyłem
pierwsza rzecz po
(Gdzieś to przeczytałem, nie pamiętam)
Nie mogłem uwierzyć, że to zadziałało !!
źródło
<script>
środku<head>
przed tąmeta
instrukcją, to (IE = edge) zostanie zignorowane.Aby zmusić IE do renderowania w trybie standardów IE9, powinieneś użyć
Niektóre warunki mogą spowodować, że IE9 przejdzie w tryb zgodności. Domyślnie może się to zdarzyć w witrynach intranetowych.
źródło
IE=edge
zamiast tego zredagowałem swoją odpowiedź, aby zawsze korzystać z najnowszego dostępnego silnika.Zamieściłem ten komentarz w osobnym wątku StackOverflow, ale pomyślałem, że warto tutaj powtórzyć:
W przypadku naszej wewnętrznej aplikacji ASP.Net dodanie znacznika „X-UA-Compatible” na stronie internetowej, w pliku web.config lub w kodzie nie miało absolutnie żadnej różnicy.
Tylko rzeczą, która pracowała dla nas było, aby ręcznie wyłączyć to ustawienie w IE8:
(Westchnienie.)
Wydaje się, że ten problem występuje tylko w przypadku IE8 i IE9 w witrynach intranetowych. Witryny zewnętrzne będą działać poprawnie i będą używać poprawnej wersji IE8 / 9, ale w przypadku witryn wewnętrznych IE9 nagle decyduje, że to właściwie IE7 i nie ma żadnej obsługi HTML 5.
Nie, do końca nie rozumiem tej logiki.
Moim niechętnym rozwiązaniem było przetestowanie, czy przeglądarka obsługuje HTML 5 (poprzez utworzenie obszaru roboczego i sprawdzenie, czy jest poprawny) i wyświetlenie tej wiadomości użytkownikowi, jeśli nie jest poprawna:
Nie jest to szczególnie przyjazne dla użytkownika, ale skłonienie użytkownika do wyłączenia tego irytującego ustawienia wydaje się być jedynym sposobem na prawidłowe działanie wewnętrznych aplikacji HTML 5.
Lub zachęć użytkowników do korzystania z Chrome. ;-)
źródło
Witryna pod adresem http://www.HTML-5.com/index.html ma metatag zgodny z X-UA, ale nadal przechodzi do Widoku zgodności, jak wskazuje ikona „podarta strona” na pasku adresu. Jak uzyskać opcję menu, aby zmusić IE 9 (wersja ostateczna 9.0.8112.16421) do renderowania strony w trybie normalnym? Próbowałem kliknąć prawym przyciskiem myszy ikonę rozdartej strony, a także sztuczkę „Alt”, aby wyświetlić dodatkowe opcje menu wspomniane przez Rene Geuze, ale te nie działały.
źródło
application/xhtml+xml
, więc używane są reguły analizy XML; XML nie obsługuje komentarzy warunkowych. W każdym razie nie ma to sensu; przeglądarka musi wybrać tryb, zanim będzie mogła zdecydować, jakie komentarze warunkowe interpretować.Na marginesie w bardziej nowoczesnych witrynach internetowych, jeśli używasz instrukcji warunkowych w tagu html zgodnie z szablonem, z jakiegoś powodu spowoduje to, że ie9 przejdzie w tryb zgodności. Rozwiązaniem jest przeniesienie instrukcji warunkowych z tagu html i dodanie ich do tagu body, innymi słowy poza sekcję head. W ten sposób możesz nadal używać tych klas w arkuszu stylów do kierowania na starsze przeglądarki.
źródło
Wygląda mi dobrze:
Jesteś pewien, że nie ustawiłeś globalnie ustawień czy coś takiego? Jest to czysta instalacja wersji beta w systemie Windows 7. Narzędzia programistyczne zgłaszają, że strona domyślnie pracuje w trybie standardowym IE9.
źródło
Niedawno musiałem rozwiązać ten problem i oto, co zrobiłem:
Przede wszystkim dotyczy to dostrajania serwera Apache.
Druga główna myśl to błąd w IE9, co oznacza, że metatag nie będzie działał, zamiast tego rozwiązania spróbuj tego
odkomentuj / lub dodaj następujący wiersz
dodaj następujące wiersze
zapisz / uruchom ponownie serwer Apache,
źródło