【问题标题】:Force a Sharepoint page into content="IE=edge"强制 Sharepoint 页面进入 content="IE=edge"
【发布时间】:2016-05-27 09:41:02
【问题描述】:

我正在使用 Sharepoint 2010,我在其中创建了一个简单的 Web 部件页面。它默认使用http-equiv=X-UA-Compatible content="IE=10; IE=8"。问题在于 Bootstrap 3 在兼容模式下不支持 IE10 或 IE8,并且 respondsjs 也不起作用。

以下是 Bootstrap 文档页面中记录的内容:

旧 Internet Explorer 兼容性不支持 Bootstrap 模式。为确保您使用的是最新的 IE 渲染模式, 考虑在您的网页中包含适当的标签:

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

问题在于我无权访问 Sharepoint 母版页,因此我无法更改此值。我尝试将它添加到页面的标题中,但由于母版页首先加载它,它只是简单地忽略它。

在网上搜索了几个小时后,我发现了一些关于这个问题的文章:

http://www.codeproject.com/Articles/667557/Programatically-Change-Page-Headers-Title-Styleshe

https://social.msdn.microsoft.com/Forums/office/en-US/7cef975b-a409-48cd-8da9-c5660fa55f11/override-master-page-meta-tags-from-child-page?forum=sharepointdevelopmentprevious

https://msdn.microsoft.com/en-us/library/system.web.ui.htmlcontrols.htmlmeta_properties(v=vs.110).aspx

这些文章谈论了很多关于添加/修改 Page_load() 或在某处输入此脚本的内容,它应该可以解决问题。我尝试将其添加到页面顶部、页面标题、页面标题下方、内容编辑器 Web 部件中,但没有任何效果。我可能错过了所有这一切的重点,但我很难过。因为我也无法访问 Sharepoint Designer,所以这对我来说有点棘手。

有人知道我可以从这里做什么吗?

protected void Page_Load(object sender, EventArgs e)
{
    HtmlMeta meta = new HtmlMeta();
    meta.HttpEquiv = "X-UA-Compatible";
    meta.Content = "IE=edge";
    HtmlHead head = Page.Header;
    head.Controls.Add(meta);
}

【问题讨论】:

  • 您确定您无权更改母版页吗?您不需要 SharePoint Designer……您可以在记事本中完成。另外,您确定要让页面在 Edge 模式下运行吗?您将破坏许多特别需要兼容模式的 IE8 仿真的 SharePoint 开箱即用功能。
  • 是的,不幸的是,母版页仅出于显而易见的原因才被锁定到 IT 部门。我只能使用 IT 部门创建的模板创建页面。我只需要在运行我的应用程序的一个页面上激活边缘,并且不需要 Sharepoint OOB 功能。我最后做的是删除我的引导 css 中的 @meda 查询。无论如何,该页面都无法通过移动设备访问,所以现在我只能这样做了。

标签: javascript twitter-bootstrap sharepoint sharepoint-2010


【解决方案1】:

试试这个:

protected void Page_Load(object sender, EventArgs e)
{
    HtmlMeta meta = new HtmlMeta();
    meta.HttpEquiv = "X-UA-Compatible";
    meta.Content = "IE=edge";
    HtmlHead head = Page.Header;

    head.Controls.AddAt(0, meta);
}

它对我有用。

【讨论】:

  • Thriggle 表示他已经尝试过这个“解决方案”并且他无法访问母版页。在按照要求编辑 Web 部件的代码时,我在本地尝试了相同的代码,但它不起作用。由于 Thriggle 只能访问他正在更改的 Web 部件,因此这只会在该 Web 部件中添加标签,不会影响布局。由于 IE 只使用第一个 ua 兼容节点,这将不起作用。
猜你喜欢
  • 2012-06-16
  • 1970-01-01
  • 2017-07-19
  • 2014-04-25
  • 2013-09-29
  • 2013-01-19
  • 1970-01-01
  • 2017-03-09
  • 1970-01-01
相关资源
最近更新 更多