我有一个.aspx
页面,如下所示:
<!DOCTYPE html>
<html>
<head runat="server">
<title>My Page</title>
</head>
<body></body>
</html>
我正在尝试使用以下代码在页面后面的代码(即Page_load
中)中设置怪癖模式元标记:
HtmlMeta _ContentTypetag = new HtmlMeta()
{
HttpEquiv = "Content-Type",Content = "text/html; charset=UTF-8"
};
Page.Header.Controls.Add(_ContentTypetag);
HtmlMeta _QuirksModetag = new HtmlMeta()
{
HttpEquiv = "x-ua-compatible",Content = "IE=EmulateIE8"
};
Page.Header.Controls.Add(_QuirksModetag);
但是当我看到页面源时,它当前输出以下内容:
<!DOCTYPE html>
<html>
<head runat="server">
<title>My Page</title>
<meta http-equiv="Page-Enter" content="blendTrans(Duration=0.0)">
<meta name="MSThemeCompatible" content="no">
</head>
<body></body>
</html>
鉴于此,我期望输出如下所示:
<!DOCTYPE html>
<html>
<head runat="server">
<title>My Page</title>
<meta http-equiv=Content-Type content="text/html; charset=UTF-8">
<meta http-equiv=x-ua-compatible content=IE=EmulateIE8>
</head>
<body></body>
</html>
此行为的原因是什么,我该如何解决?
更新
我改用Response.AddHeader("x-ua-compatible","IE=EmulateIE8");
修复了这个问题。 (摘自here)
但是,知道最初的方法为什么行不通还是个好主意。