这种复杂的iframe自适应如何做

发布于 2021-12-01 15:52:50 字数 833 浏览 726 评论 7

♣ 先说前提:

  • 在响应式下要求引用站外的iframe自适应其父窗口的大小。
  • 引用的站外iframe的宽度和高度是一固定值。

♣ 探讨:

先拿一个实物来说事吧!

比如下面这个iframe


<iframe frameborder="0" width="640" height="498" src="http://v.qq.com/iframe/player.html?vid=j0187bxjv1k&tiny=0&auto=0" allowfullscreen></iframe>

其宽和高分别是640和498,此iframe放在一div中,该div容器的宽度是100%它会随播放屏幕大小不同而变化。此时问题来了,因为iframe的宽高是一固定值,所以有时大于容器,有时小于容器。如何解决随容器大小的改变,iframe正好撑满容器中呢?

当然,重置一下iframe的宽和高是必须的,如iframe----->width:100%;可此时问题来了,高度的大小如何配置呢?当然用js来控制。

这里还有一个探讨问题的前提,那就是本题用js原生探讨而不用类jquery这些框架。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

不再见 2021-12-03 18:53:02

能用css干嘛用jq,搞不懂

睫毛上残留的泪 2021-12-03 18:49:42

你好象喜欢讨论前提,而我关心的是前提下解决问题的思路!

时光清浅 2021-12-03 18:39:13

回复
因为我没看懂你的问题到底是啥,响应式不外乎两招终极绝招,媒体查询和resize事件,你都试试呗。如果这俩都搞不定,那就是天坑了。

瀞厅☆埖开 2021-12-03 18:33:00

反正我也没太看懂需求,只能跟你讲一句话,用jquery能写出来,用原生肯定能写,只是有时候会麻烦点,所以你那个前提毫无意义。

还有就是,楼上那个display: flex是CSS,跟啥jquery都没关系。

能否归途做我良人 2021-12-03 18:15:46

如果是跨域的iframe,是做不到的,因为浏览器有同源策略,不是同一个源的,会有安全性限制。

残花月 2021-12-03 17:00:23

不是说了吗,用原生!

居里长安 2021-12-02 10:28:47

display:flex可以做到

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文