如何在IE8模式下模拟Iframe

How to emulate Iframe only in IE8 mode.

本文关键字:模拟 Iframe 模式 IE8      更新时间:2023-09-26

我遇到的问题与下面的 2 相同:

链接 1

链接 2

我遇到的问题是我的应用程序是一个 AngularJS 页面,它使用 IE8 不支持的 ui 路由器。

为了能够正确显示 SSRS 报告,我必须将此元添加到根页面:

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

但这会导致页面显示出现很多问题,我需要找到不同的解决方案。

我正在尝试类似以下内容,但没有运气:

<iframe class="ssrs-frame" type="text/html" ng-src="{{trustSrc(SSRS.url)}}" frameborder="0">
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">
        <meta name="viewport" content="width=device-width,initial-scale=1">
    </head>
    <body>
    </body>
</html>

有什么方法可以强制 Iframe 只使用 IE8 进行模拟吗?

如果你想为IE8提供特定的CSS,你可以使用(在head内部):

<!--[if IE 8]>
    <link rel="stylesheet" type="text/css" href="ie8.css">
<![endif]-->

这行得通。我不知道HTML是否也允许这样做,你应该测试一下:

 <!--[if IE 8]><iframe></iframe><![endif]-->

否则,您可以创建 2 个 iframe,其中 1 个为 IE8 显示,1 个不显示。您可以在特定 iframe 的ie8.css文件中设置display: block

希望这有帮助。干杯