根据MSDN,我只需要包含HTML 5文档类型即可强制标准兼容模式:
http://msdn.microsoft.com/en-us/library/gg699338%28v=vs.85%29.aspx
当远程提供标记时,它可以工作。问题是当我采用相同的标记并从本地运行的 apache 服务器提供它时。IE9 默认为 quirks 模式,兼容性视图按钮消失。
我在本地做了很多开发,如果我只能在远程服务时在 IE 中测试我的代码,那就违背了目的。提前谢谢。
使用 <!DOCTYPE html>
并添加
<meta http-equiv="X-UA-Compatible" content="IE=9">
到 HTML 页面的<head>
部分。它将强制Internet Explorer使用IE标准模式。
尝试添加以下内容:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
在页面顶部。我不确定如果您尝试的其他方法没有,这是否会在本地起作用......但值得一试。
我也有同样的问题。我的aspx文件上有HTML5文档类型,但它仍然以IE7模式呈现。我在没有设置 HTML4.01 Strict 的情况下修复了它,也没有元 http-equiv。
我的问题是我有一个ASP标签,然后在单独的行中是doctype。IE9希望文档类型在第1行而不是其他地方。
所以如果你有这个:
<%
' some asp code
%>
<!DOCTYPE html>
<!-- rest of file -->
考虑将其更改为:
<%
' some asp code
%><!DOCTYPE html>
<!-- rest of file -->
即使在初始 asp 块之前有@Import语句,这对我也有用:
<%@ Import Namespace="System.Text.RegularExpressions" %>
<%
' some asp code
%><!DOCTYPE html>
<!-- rest of file -->
请参阅本文档中的"IE Windows special: the xml prolog"部分:
http://www.quirksmode.org/css/quirksmode.html
DOCTYPE 之前的任何内容都会导致它切换到 Quirks 模式