教你在iframe标签中制作滚动条样式,iframe标签的用途介绍
第一让我们看看HTML iframe标签中关于滚动条的去留和留存:
iframe嵌入页面后,我们有时需要调整滚动条,例如,去除全部的滚动条,去除右侧的滚动条且保存底下的滚动条,去除底下的滚动条且保存右侧的滚动条。那么我们应当如何做呢?
一:去除全部的滚动条
第一个办法:iframe 有一个scrolling属性,它有 auto , yes , no 这三个值。
scrolling : auto -----在需要的时候滚动条显现
scrolling : yes ------始终显示滚动条
scrolling : no -------始终潜藏滚动条
当设定scrolling : no时,全部的滚动条就没有了。
第二个办法:我发明除了 scrolling 可以去除全部的滚动条外,还有另一个办法,在嵌入的页面里设定body{overflow:hidden},这样也可以将滚动条去除,并且这也是当我们只想去除某一个滚动条所使用的属性。
二:去除右侧的滚动条且保存底下的滚动条
假如只想保存底下的滚动条,那么可以在嵌入的页面里设定 body{overflow-x:auto ; overflow-y:hidden;}
三:去除底下的滚动条且保存右侧的滚动条
在嵌入的页面里设定 body{overflow-x:hidden;overflow-y:auto;}
我们已经知道了这两个属性都可以设定滚动条的显示和潜藏,那么当两个同时设定时,会显现哪个结果呢?
通过检测,我发明当scrolling="auto"或者" yes"时,假如设定了body,那么就会使用body里的设定;当scrolling="no"时,不管body设定了什么,都会使用scrolling的设定,即全部的滚动条都被去除了。
接下来我们说说去除水平滚动条的方法:
可以通过下面的办法来去除:在iframe 所包括的网页中增加
<style> html { overflow-x:hidden; } </style>
即可以去除水平滚动条了,也可以用一样的办法去除垂直滚动条。
解决动态高度的iframe加载后双滚动条的问题:
若iframe数据是通过ajax 异步加载的,里面的div高度也是动态猎取的,这里有个问题,当div内的内容没有加载到,上面的 var height 只能猎取到没有撑开的高度,加载完ajax后还是没法得到实际的高度,这里就需要等所有document 树加载完再加载猎取实际高度的办法
终极版,写在 iframe 页面
var ht = setInterval('getHeight',100); function getHeight(){ if(document.readyState == 'complete'){ var height = (document.body.scrollHeight)+'px'; $('parentdiv',window.parent.document).css('height',height); window.clearInterval(gh); } }
或许有更简便的解决办法,但这是我一步步碰到问题和解决的思绪和代码,值得记载一下。当然还有scrolling属性也是可以做的,大家可以研讨一下,如果大家有什么简便的方法,我们可以一起计议啊,欢迎鄙人方留言
【小编引荐】
HTML中的base标签怎样写相对途径?(内附使用介绍)
HTML img标签的src属性的用途是啥?详细使用办法解析(内附实例)
以上就是教你在iframe标签中制作滚动条样式,iframe标签的用途介绍的具体内容,更多请关注百分百源码网其它相关文章!