Reputation: 11088
We're in the process of converting web app to IE8 (now client is using IE6). We didn't create that app. We are only modifying and adding features to it. When I visit most of the pages in this app using IE8 developer tools show that IE is working in Quirks mode. But some of the pages work in Internet Explorer 8 Standards Mode. This page http://msdn.microsoft.com/en-us/library/dd565628(VS.85).aspx says:
"Quirks Mode: This behavior matches that of Internet Explorer when rendering a document with no doctype or a Quirks doctype."
But all of our pages have DOCTYPE defined - !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" (I don't know how to enter angle brackets here but they are present on webpage.
Can anyone explain me why is IE8 working in both Quirks and standard mode when displaying pages that all have DOCTYPE defined? Or maybe show me two examples of pages that IE8 displays in Quirks and standard mode?
Upvotes: 2
Views: 4346
Reputation: 1
Try viewing your HTML i an HEX editor. There might be some weird characters (usually 3: ef bb bf) just before the DOCTYPE declaration. IE also falls into quirks in that case. Happened to me before, and happening right now as well.
Upvotes: 0
Reputation: 700512
The doctype tag has to be first in the markup, otherwise it's ignored. If you have an XML declaration tag before the doctype tag, IE will ignore the doctype.
If the HTML markup is utterly broken, the browser might fall back into interpreting it as tag soup instead of as an HTML document, and rendering it in Quirks mode.
Use the W3C HTML validator to check that the code doesn't have any serious errors.
Upvotes: 6