如何在HTML中调整iframe的宽度和高度以适应其内容?


我们可以使用 CSS 设置尺寸来调整 iframe宽度高度。这可以通过将宽度高度属性设置为特定值或父容器的百分比来完成。此外,我们可以使用 JavaScript 根据 iframe 内的内容动态调整尺寸。“iframe”是“Inline frame”(内联框架)的缩写。

以下是几种可能的方法:

使用 JavaScript

您可以使用 JavaScript 调整 iframe 的宽度和高度以适应其内容。这可以通过获取 iframe 元素,然后将其宽度和高度属性设置为内部内容的值来完成。

<iframe id="myiframe" src="http://example.com"></iframe>
<script>
   var iframe = document.getElementById("myiframe");
   iframe.width = iframe.contentWindow.document.body.scrollWidth;
   iframe.height = iframe.contentWindow.document.body.scrollHeight;
</script>

使用 CSS

您也可以使用 CSS 调整 iframe 的宽度和高度以适应其内容。这可以通过将 iframe 的宽度和高度属性设置为 100%,然后使用 padding-bottom 属性根据内部内容的纵横比调整 iframe 的高度来完成。

<iframe id="myiframe" src="http://example.com"></iframe>
<style>
   #myiframe {
      width: 100%;
      height: 100%;
   }
</style>

使用 HTML

您也可以使用 HTML 调整 iframe 的宽度和高度以适应其内容。这可以通过将 iframe 元素的 width 和 height 属性设置为 100% 来完成。

<iframe width="100%" height="100%" src="http://example.com"></iframe>

注意 - 请记住,当使用 JavaScript 或 CSS 调整 iframe 大小时,可能会导致跨域 iframe 出现问题,因为浏览器可能会阻止访问 iframe 内的内容。在这种情况下,建议使用 HTML 方法。

示例

这是一个使用 JavaScript 调整 iframe 的宽度和高度以适应其内容的完整工作示例:

<!DOCTYPE html>
<html>
   <head>
      <script>
         window.onload = function() {
            var iframe = document.getElementById("myiframe");
            iframe.width = iframe.contentWindow.document.body.scrollWidth;
            iframe.height = iframe.contentWindow.document.body.scrollHeight;
         }
      </script>
   </head>
   <body>
      <iframe id="myiframe" src="https://wikipedia.org/wiki/Main_Page"></iframe>
   </body>
</html>

更新于:2023年9月2日

9.3万+ 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告