html - 如何强制 dotnetnuke 渲染到 IE9 中

标签 html internet-explorer-9 dotnetnuke ascx

我的 dotnetnuke 网站在 IE9 中看起来不错,但在 IE8 和 IE7 中就崩溃了。

我尝试过元标记:

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

但是如果我把它放在 ascx (第一行)中,但它没有显示。如果我把它放在页面设置 - 标签中,它会显示在标题的底部。所以这样也行不通,如何将标签放在顶部或者还有其他方法吗?

提前致谢。

最佳答案

您可以使用一些代码来添加指令。在您的皮肤中(或者在每个皮肤控件引用的控件中),添加以下内容:

<script runat="server">
    private void Page_PreRender(object sender, EventArgs e)
    {
        var meta = new HtmlMeta();
        meta.Content = "IE=edge";
        meta.HttpEquiv = "X-UA-Compatible";
        this.Page.Header.Controls.AddAt(0, meta);
    }
</script>

这要求 Control directive 中的 AutoEventWireup 为 true 。否则,您还需要重写 OnInit 或类似的内容来手动连接事件。

关于html - 如何强制 dotnetnuke 渲染到 IE9 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15087698/

相关文章:

DotNetNuke 6 - 具有 DNN 皮肤开发功能的一款 - 可折叠 Pane

javascript - 在所有浏览器上强制更新缓存

javascript - 如何用jQuery获取url的最后两个字符?

javascript - 用JS将php变量拆分为数组

javascript - 如何在 IE9 中使用 javascript 从文件输入中获取本地文件路径?

asp.net - 在 DotNetNuke 中使用 jQuery UI 日期选择器代替 Telerik RadCalendar

javascript - 将 Background-color 属性应用于 div 无法按预期工作

javascript - ClassList 在 IE9 中不起作用。需要替代功能

jsf - 如何使meta标签成为<head>部分中的第一个标签?

.net - 如何删除出现在 DNN 站点上的最大化最小化按钮