CSS完美实现iframe高度自适应(支持跨域)

Iframe的强大功能偶就很少说了,它不但被开发人员常常运用,并且黑客们也经常使用它,总之用过的人知道它的强大之处,可是Iframe有个致命的“BUG”就是iframe的高度没法自动适应,这一点让不少人都头疼万分。百度或是谷歌一下,确实不少解决方法,但尝试一下,会发现问题不少:浏览器兼容性差不能自适应仅支持同域Iframe等诸多问题,尤为是跨域Iframe高度自适应问题。网上根本找不到一种可行的方案(惟一有一种提到加入代理页面的,通过测试发现无用)。难道真的没有一种可行的解决方案了吗? No,下面小鸣子和你们分享一种强大的方法,代码以下:html

 

<html>
<head>
<style>
body {margin-left: 0px;margin-top: 0px;margin-right: 0px;margin-bottom: 0px;overflow: hidden;}
</style>
</head>chrome

<body>
<iframe src='" http://www.baidu.com/' width='100%' height='100%' frameborder='0' name="_blank" id="_blank" ></iframe>跨域

</body>浏览器

</html>测试

 

代码强大之处:代理

1. 该方法完美兼容IE6,7,8 ,Fire fox,chrome,opera 等主流的浏览器;xml

2.同域,跨域皆支持;htm

3.不调用任何JS脚本;开发

注意三点.iframe

1. 文件开头不能是:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

必须 是<html xmlns="http://www.w3.org/1999/xhtml">开头

2. body样式中的 overflow: hidden; 绝对不对省略;

3.Iframe 中的 height='100%' 以及 滚动条不能设为no(默认是yes,不用设置便可)

 

好了,立刻试试吧。100%不会让你失望。

相关文章
相关标签/搜索