iframe高度自适应里面的内容怎么实现?

Posted dongdong415

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iframe高度自适应里面的内容怎么实现?相关的知识,希望对你有一定的参考价值。

iframe高度自适应里面的内容怎么实现?
一、固定的容器中iframe宽高100%撑满容器,iframe超出部分出现滚动条
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>固定的容器中iframe宽高100%撑满容器,iframe超出部分出现滚动条</title>
</head>
<body>
<div class="test" style="width: 100%;height: 500px;">
<iframe src="iframe.html" frameborder="none" scrolling="auto" style="width: 100%; height: 100%;"></iframe>
</div>
</body>
</html>
二、iframe高度有多少,容器高度就有多少,iframe高度自适应里面的内容
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>iframe高度有多少,容器高度就有多少</title>
<style>
html,body{ padding: 0; margin: 0;}
</style>
</head>
<body>
<div class="test" id="test" style="width: 100%;">
<iframe name="ifr" id="ifr" src="iframe.html" frameborder="none" scrolling="auto" style="width: 100%; height: 100%;"></iframe>
</div>
<script>
function test(h){
document.getElementById("test").style.height = h+"px"
}
//在父级操作容器高度,这有个问题就是在iframe中的页面有高度改变的时候这里并不会改变
/*document.getElementById("ifr").onload = function(){
document.getElementById("test").style.height = this.contentWindow.document.body.clientHeight+"px";
};*/
</script>
</body>
</html>
子iframe中的js代码
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>北京CD|长沙TS</title>
<style>
html,body,ol{ margin: 0; padding: 0;}
li{ line-height: 30px;}
li:nth-of-type(even){ background: #ddd;}
</style>
</head>
<body>
<div id="test">test</div>
<div style="height: 2000px; background: #ddd;"></div>
<script>
function setHeight(){
var h = document.body.clientHeight;
window.parent.test(h);
}
setHeight();
//页面高度有改变的时候再次调用 setHeight 重置外层容器的高度
document.getElementById("test").onclick = function(){
this.style.height = "500px";
setHeight();
}
</script>
</body>
</html>
还有其他办法吗?可以交流一下

以上是关于iframe高度自适应里面的内容怎么实现?的主要内容,如果未能解决你的问题,请参考以下文章

Iframe的代码怎么写才能满足我的自适应内容的高度的要求啊?

layui的后台布局怎么让iframe的高度自适应

如何让iframe自适应高度? 我也遇到这个问题,我想知道你是怎么解决的呢?

怎么让Div自适应高度

怎样让iframe中的内容的宽度和高度改变后,dialog的宽高自适应?

怎么让iframe自适应浏览器的高度和宽度