小智..
10
这个线程有一些非常重要的内容已被触及但尚未完全解释.HTML方法(在头部添加元标记)仅在原始HTML或非常基本的服务器页面上一致地工作.我的网站是一个非常复杂的服务器驱动的网站,包含母版页,主题和许多第三方控件等.我发现其中一些控件是以编程方式将自己的标签添加到最终的HTML中,这些标签被推送到头标记开头的浏览器.这有效地使HTML元标记无效.
好吧,如果你不能打败他们,加入他们.对我有用的唯一解决方案是在我的母版页的预渲染事件中做同样的事情:
Private Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
Dim MetaTag As HtmlMeta = New HtmlMeta()
MetaTag.Attributes("http-equiv") = "Content-Type"
MetaTag.Attributes("content") = "text/html; charset=utf-8;"
Page.Header.Controls.AddAt(0, MetaTag)
MetaTag = New HtmlMeta()
MetaTag.Attributes("http-equiv") = "X-UA-Compatible"
MetaTag.Attributes("content") = "IE=9,chrome=1"
Page.Header.Controls.AddAt(0, MetaTag)
End Sub
这是VB.NET,但同样的方法适用于任何服务器端技术.只要你确保它是在呈现页面之前完成的最后一件事.