2009-10-30 11 views
11

Pracuję nad stroną, która po załadowaniu do IE8 i wyświetleniu narzędzi dla programistów mówi mi, że domyślną stroną jest tryb dziwactwa.dlaczego uruchamiam tryb dziwactwa w IE8?

mam ścisły DTD:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 

I nawet poszedł do przodu i umieścić w wyraźnych norm przełączyć, choć nie sądziłem, że muszę:

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

Nie rozumiem, dlaczego strona domyślna nie jest standardem IE8?

Jedyne o czym mogę pomyśleć to to, że aby dostać się na tę stronę, najpierw muszę zalogować się do aplikacji, a pierwsze strony, które muszę przemierzyć, to stare strony trybu dziwactwa. Czy IE decyduje, który tryb ma być używany na poziomie serwera, czy ma decydować o stronie po stronie?

Dzięki!

+0

spróbuj zamknąć wszystkie okna IE8 i ładowanie ponownie? – Jason

+0

rozwiązało to mój problem z trybem dziwaków: http://stackoverflow.com/questions/6294301/dreamweaver-causing-quirks-mode-in-internet-explorer – rtpHarry

Odpowiedz

22

Czy IE zdecydować, w którym trybie używać na poziomie serwera

Ogólnie nie, nie. Istnieje brzydota z compatibility view list, która jest site-specific, ale to tylko kopie z powrotem do IE7-Style-Standards Mode, a nie IE5.5-style-Quirks-Mode.

Twój kod wygląda inaczej, o ile ten DOCTYPE jest pierwszą rzeczą na stronie. IE będzie zmuszony do document.compatMode= 'BackCompat', jeśli jest komentarz, PI, deklaracja XML (sprzed IE8) lub jakiekolwiek inne niż białe treści tekstowe przed doctype. Jeśli postać kontrolująca się zakradła, czego nie widzisz w edytorze tekstu, może to zrobić.

Przykładowa strona problemu?

+3

Masz to! Problem polegał na tym, że deklaracja doctyku nie była absolutnie pierwszą rzeczą na stronie. Dzięki! –

+0

w moim przypadku mam pewną sesję i trochę przekierowania nagłówka, ale jeśli powtórzysz kod po tym zadziała: 'echo ' ';'. możesz użyć dowolnego innego 'doctype' – Patrioticcow

Powiązane problemy