9

我有这个iframe在 FF 上运行良好,但它似乎没有在 Google Chrome 上加载。

有人能告诉我为什么会这样吗?

我的iframe

<iframe src="http://tripsketch.com/page?s=TheCavendish#!Id=1024&Name=London&Type=City&view=Attraction" height="700" width="990" frameborder="0" scrolling="no">
</iframe>

4

5 回答 5

12

我对其进行了测试,它在我的 chrome 中运行良好。我的猜测是你已经设置好了,所以包含 iframe 的页面正在通过 https 访问。如果页面是 https,则无法在该页面上加载非 https 的 iframe。它将导致“混合内容错误”,出于安全目的,它不会加载。

它在 FF 中有效,因为 FF 对此安全限制更加宽松,而 Chrome 恰好对混合内容错误更加严格。

于 2013-08-14T04:21:56.507 回答
2

问题出在 chrome 版本 27.xx 和 28.xxx 在此版本中,chrome 存在 url 重定向问题,结果为空(302 错误)。

于 2013-09-03T10:05:49.627 回答
0

为可能像我一样苦苦挣扎的人添加解决方案。我通过添加内容安全策略选项解决了这个问题。

<httpProtocol>
  <customHeaders>
    <add name="Content-Security-Policy" value="frame-ancestors https://www.<preferredwebsitedomain>.com" />
    <!-- Test this option as Chrome supports CSP now for Iframe opening-->
  </customHeaders>
</httpProtocol>
于 2018-07-19T06:30:52.697 回答
0

我有同样的问题,我不知道是什么,它认为是因为 chrome 块是为了安全,无论如何,我可以这样解决:

在您的 html 中:

<embed src='your_path' width='100%' height='100%'  type="application/pdf" />
于 2018-10-09T18:19:20.850 回答
-3

最后经过多次调查和搜索,下面的代码解决了这个问题:

<style type="text/css">
iframe {
  border: none;
  width: 100%;
  height: 500px;
}

@media (min-width: 1024px) {
  .content_viewport {
    border: 0px none;
    height: 900px;
width: 100%;
  }
}
@media (max-width: 1023px) {
  .content_viewport {
    border: 0px none;
    height: 900px;
width: 100%;  }
}
@media (min-width: 768px) {
  .content_viewport {
    border: 0px none;
    height: 900px;
width: 100%;  }
}
</style>
<div style=" overflow: hidden; margin: 15px auto; max-width: 880px;"><iframe class="content_viewport" scrolling="no" src="<Your URL>"></iframe>
<p>&nbsp;</p>
</div>
于 2019-02-24T08:07:31.923 回答