iframe 多层嵌套 无限嵌套 高度自适应的解决方案

所属分类: 网页制作 / HTML/Xhtml 阅读数: 2051
收藏 0 赞 0 分享
有A,B,C三个页面,A页面包含B页面,B页面包含C页面.A页面随着B页面自适应,C页面随着B页面自适应
A页面

复制代码
代码如下:

<body>
<iframe id="main" name="main" width="980" scrolling="no" frameborder="0" src="B页面"
onload="this.height=main.document.body.scrollHeight;this.width=main.document.body.scrollWidth;if(this.height < 410){this.height=410;}">
</iframe>
</body>

B页面

复制代码
代码如下:

<body>
<!--左边-->
<div style="flost:left;">
左边菜单
</div>
<!--右边-->
<div style="flost:right;">
<iframe id="testIframe" name="testIframe" frameborder=0 style="width: 680px;" scrolling="no" src="C页面"></iframe>
</div>
</body>

C页面
将下面这个JS函数写到 最最底层的页面中(即最孙子的那个页面) 并在body的onload事件中调用该方法 【下面这个公式是万能公式】

复制代码
代码如下:

<script type="text/javascript">
//进行Iframe的自动撑开,让所有父页面的Iframe都自动适应包含页高度
function autoHeight(){
var doc = document,
p = window;
while(p = p.parent){
var frames = p.frames,
frame,
i = 0;
while(frame = frames[i++]){
if(frame.document == doc){
frame.frameElement.style.height = doc.body.scrollHeight + 'px'; // 这里一定要注意 火狐必须要加'px‘ 否则火狐无效
doc = p.document;
break;
}
}
if(p == top){
break;
}
}
}
</script>
<body onload="autoHeight();">
<!--经测试 这个最最最子的页面的body中必须要有一个有高度的div才行 否则上面的自适应生效-->
<div style="height: 1px;">
</div>
<div style="padding-bottom: 10px;"> <!--这句话也是必不可少的-->
这里可以写真正的内容 并且给该div的padding-bottom设一个值
</div>
</body>
更多精彩内容其他人还在看

html 网页中的锚点(命名锚记)的使用介绍

html中的锚点想必大家并不陌生吧,锚点是网页制作中超级链接的一种,又叫命名锚记,下面以实例的方式为大家介绍下锚点的使用,不了解的朋友可不要错过哦
收藏 0 赞 0 分享

html中使用js来获取本地系统时间

获取本地系统时间的方法有很多,接下来为大家介绍喜爱使用js获取的具体实现,感兴趣的可以参考下
收藏 0 赞 0 分享

表单文件选择框样式自定义示例

大家都知道表单文件的选择框样式都是默认的,很不美观,下面就为大家写一个,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

让pre标签自动换行示例代码

pre 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符,下面为大家介绍下如何让pre标签自动换行,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

DIV背景半透明文字不半透明的样式

DIV背景半透明,DIV中的字不半透明如何实现,下面有个不错的示例,感兴趣的朋友可以了解下
收藏 0 赞 0 分享

html中的div、td 、p 等容器内强制换行和不换行的实现

div、td 、p 等容器内强制换行和不换行,在某些情况下还是比较实用的,下面本文整理了一些相关方面的知识,并有具体的实现方法,需要的朋友可以参考下
收藏 0 赞 0 分享

html 文本框(text)不可用只读的多种实现方法

有时候,我们希望表单中的文本框是只读的,让用户不能修改其中的信息,本文整理了多种实现方法,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

HTML网页头部代码实例详解

HTML中我们一般把部分称为网页的头部。头部部分的内容虽然不会在页面中显示,但它能影响到搜索引擎对网页的收录和排序,以及网页的各种全局设置,可以说是至关重要
收藏 0 赞 0 分享

Html注释 Html中标记文字注释的符号

HTML注释,我们经常要在一些代码旁做一些HTML注释,这样做的好处很多,比如:方便查找,方便比对,方便项目组里的其它程序员了解你的代码,而且可以方便以后你对自己代码的理解与修改等等
收藏 0 赞 0 分享

Html 元素隐藏的几种方式

隐藏Html元素的方法最常用的方法有,css的display:none,一种方法两种实现方式,感兴趣的朋友可以了解下
收藏 0 赞 0 分享
查看更多