IE9 文档模式切换修复了 SharePoint CSS 问题?

Posted

技术标签:

【中文标题】IE9 文档模式切换修复了 SharePoint CSS 问题?【英文标题】:IE9 Document Mode Toggle fixes SharePoint CSS issues? 【发布时间】:2011-10-29 21:42:00 【问题描述】:

我正在开发我的第一个 SharePoint 项目,并提供一些 UX 支持。我的客户页面使用了一些自定义 CSS,包括带有下拉子菜单的水平主菜单。在 IE9 中加载页面时,所有子菜单均无法正常工作。当您将鼠标悬停在***项目上时会出现下拉菜单,但当您将光标向下放到子菜单时,悬停不会注册并且菜单会消失。

这些链接在最新版本的 Chrome 和 Firefox 中运行良好,所以我很确定这是 IE 的怪癖。在 IE9 中,如果我打开开发人员工具并将文档模式从 IE9 切换到 IE7,然后再切换回 IE9,则菜单在浏览器选项卡的剩余生命周期内都能正常工作(例如,当我使用子菜单导航到其他页面时) ,下拉菜单继续正常运行)。不幸的是,由于这是 SharePoint,我对此处的 html 结构没有太多控制权。

有人知道会发生什么吗?有谁知道将浏览器模式切换到 IE7 并返回的影响以及为什么这可以解决问题?谢谢!

【问题讨论】:

所以当页面第一次加载并查看开发者工具时,它会显示 Document Mode: IE9 Standards? 没错。如果我将其更改为 IE7 标准,然后再改回 IE9 标准,它就可以工作。我相信下面 lofto 描述的元标记会起作用,但前提是我可以确保它是 head 部分中的第一个元元素。我在操作 SharePoint 以将元标记放置在其中时遇到问题。 @GenuineSmile29 我试过了,但它不适合我。你找到解决办法了吗? 【参考方案1】:

试试这个:

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

它将强制 IE8、IE9 等像 IE7 一样呈现。

【讨论】:

我会试一试并报告! 我得到:HTML1115:X-UA-Compatible META 标签('IE=7')被忽略,因为文档模式已经完成。 我想我需要定位 META 标签,使其成为 head 部分的第一个 META 标签。否则它会被忽略。 您需要在您的 SharePoint 网站的母版页中添加此标记 它也必须在标签的第一个或直接在<title>标签之后

以上是关于IE9 文档模式切换修复了 SharePoint CSS 问题?的主要内容,如果未能解决你的问题,请参考以下文章

gwt 2.4.0仅适用于IE的空白页

如何强制 IE10 以 IE9 文档模式呈现页面

IE10 console.log 不工作

Vue兼容ie9+

JSP ie8 ie9下标准文档变为杂项模式(Quirks)的解决办法

IE9 浏览器模式和条件注释