why am I triggering quirks mode in IE8?

纵饮孤独 提交于 2019-12-19 05:42:29

问题


I'm working on a page that, when I load into IE8 and view the developers tools it tells me that page default is quirks mode.

I've got a strict DTD:

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

I even went ahead and put in the explicit standards switch, though I didn't think I'd need to:

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

I can't understand why page default isn't IE8 standards?

Only thing I can think of is that to get to this page, I first have to log in to an application and the first pages I must traverse are old quirks mode pages. Does IE decide on which mode to use at a server level, or is it supposed to decide page by page?

Thanks!


回答1:


Does IE decide on which mode to use at a server level

Not generally, no. There is the ugliness of the compatibility view list, which is site-specific, but that only kicks you back to IE7-style-Standards Mode, not IE5.5-style-Quirks-Mode.

Your code otherwise looks OK, as long as that DOCTYPE is the very first thing on the page. IE will be forced to document.compatMode= 'BackCompat' if there is a comment, PI, XML declaration (prior to IE8) or any non-whitespace textual content before the doctype. If a control character has snuck in that you can't see in your text editor, that could do it.

Example problem page?



来源:https://stackoverflow.com/questions/1652791/why-am-i-triggering-quirks-mode-in-ie8

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!