超强,用CSS构建iframe效果

资讯 驱动中国 若水 2,298 次阅读 0 条评论
分享 Q

iframe应用很普遍,通常的需求有两种:

1,获取iframe效果,就是带一个滚动条,可以省不少版面。
2,要嵌一个页面,实现框架链接。

如果不方便使用iframe,可以有如下解决方案:

第一种需求如果我们使用CSS布局来实现,即可以少一个页面,也可以提高效率。
第二种需求可以采用XMLhttp远程获取。

A. 直接模拟iframe

用层做容器

  引用:
#content { overflow:auto; height:200px; width:600px; background:#f00;}

效果演示源代码:
<!DOCTYPE <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> PUBLIC "-//W3C//DTD X<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> 1.0 Transitional//EN" "http://www.w3.org/TR/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>1/DTD/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>1-transitional.dtd"> <<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> <a href="http://www.5ibk.cn/bkhtml/c21/" title="XML教程">XML</a>ns="http://www.w3.org/1999/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>"> <head> <meta http-equiv="Content-Type" content="text/<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>; charset=utf-8" /> <title>用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>构建iframe效果 - <a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a> Iframe - RexSong.com</title> <style> * { font:12px Arial;} <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> { overflow:hidden; border:0; height:100%;} body { overflow:hidden; height:100%;} #content { overflow:auto; height:185px; width:600px; background:#ccc; padding:10px;} </style> </head> <body> <h4 style="font-weight:bold;">用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>构建iframe效果</h4> <p>来自:<a href="http://homepage.yesky.com/" target="_self">天极网页陶吧</a></p> <p>A. 直接模拟iframe,用层做容器</p> <div id="content"> <p>·<a class="grey-s" href="http://homepage.yesky.com/485/2354485.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">仅用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>编写无限分级弹出菜单</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/442/2354442.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">浏览器滚动条的参数总结</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/436/2354436.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">引入<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a><a class='Channel_KeyLink' href='http://edu.itbulo.com/web/hc/<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>/'>样式表</a>的四种方式介绍</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/424/2354424.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">两种方式实现的文字竖排效果</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/336/2352836.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">网页设计高级布局40例参考</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/251/2352751.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">从GMail认识W3C标准和Ajax</a></p> </div> </body> </<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>> #p#分页标题#e#


用body做容器

  引用:
HTML { overflow:hidden; height:100%; background:#fff; border:0;}
* HTML { padding:100px 0 0 100px;}
body { overflow:scroll; background:#f00; margin:0; position:absolute; top:100px; left:100px; bottom:0; right:0;}
* HTML body { height:100%; width:100%;}


效果演示源代码:

<!DOCTYPE <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> PUBLIC "-//W3C//DTD X<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> 1.0 Transitional//EN" "http://www.w3.org/TR/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>1/DTD/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>1-transitional.dtd"> <<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> <a href="http://www.5ibk.cn/bkhtml/c21/" title="XML教程">XML</a>ns="http://www.w3.org/1999/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>"> <head> <meta http-equiv="Content-Type" content="text/<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>; charset=utf-8" /> <title>用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>构建iframe效果 - <a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a> Iframe - RexSong.com</title> <style> * { font:12px Arial;} <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> { overflow:hidden; height:100%; background:#fff; border:0;} * <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> { padding:200px 0 0 100px;} body { overflow:auto; background:#ccc; margin:0; position:absolute; top:200px; left:100px; bottom:0; right:0;} * <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> body { height:100%; width:100%; position:static;} #info { position:fixed; top:10px; left:10px;} * <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> #info { position:absolute;} </style> <script src="http://www.google-analytics.com/urchin.js" type="text/<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">JavaScript</a>"> </script> <script type="text/<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">JavaScript</a>"> _uacct = "UA-67927-3"; urchinTracker(); </script> </head> <body> <div id="info"> <h4 style="font-weight:bold; margin-top:0;">用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>构建iframe效果</h4> <p>来自:<a href="http://homepage.yesky.com">天极网页陶吧</a></p> <p>A. 直接模拟iframe,用body做容器</p> </div> <p>·<a class="grey-s" href="http://homepage.yesky.com/485/2354485.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">仅用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>编写无限分级弹出菜单</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/442/2354442.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">浏览器滚动条的参数总结</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/436/2354436.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">引入<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a><a class='Channel_KeyLink' href='http://edu.itbulo.com/web/hc/<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>/'>样式表</a>的四种方式介绍</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/424/2354424.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">两种方式实现的文字竖排效果</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/336/2352836.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">网页设计高级布局40例参考</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/251/2352751.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">从GMail认识W3C标准和Ajax</a></p> </body> </<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>> #p#分页标题#e#

B. 绝对定位模拟iframe

滚动条在外边

  引用:
HTML { overflow:hidden; border:0; height:100%; max-height:100%;}
body { overflow:hidden; margin:0; height:100%; max-height:100%; position:relative;}

#head { position:absolute; top:0; right:15px; width:100%; height:100px; background:#f00; z-index:2;}
#foot { position:absolute; bottom:0; right:15px; width:100%; background:#f00; height:50px;z-index:2;}

#content { height:100%; position:relative; z-index:1; overflow:auto;}


效果演示源代码:

<!DOCTYPE <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> PUBLIC "-//W3C//DTD X<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> 1.0 Transitional//EN" "http://www.w3.org/TR/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>1/DTD/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>1-transitional.dtd"> <<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> <a href="http://www.5ibk.cn/bkhtml/c21/" title="XML教程">XML</a>ns="http://www.w3.org/1999/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>"> <head> <meta http-equiv="Content-Type" content="text/<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>; charset=utf-8" /> <title>用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>构建iframe效果 - <a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a> Iframe - RexSong.com</title> <style> * { font:12px Arial;} <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> { overflow:hidden; border:0; height:100%;} body { overflow:hidden; margin:0; height:100%; position:relative;} #content { height:100%; position:relative; z-index:1; overflow:auto;} #head { position:absolute; top:0; right:16px; width:100%; height:100px; background:#ccc; z-index:2;} #foot { position:absolute; bottom:0; right:16px; width:100%; background:#ccc; height:50px;z-index:2;} </style> <script type="text/<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">JavaScript</a>"> _uacct = "UA-67927-3"; urchinTracker(); </script> </head> <body> <div id="head"> <div style=" padding:12px 0 0 26px;_padding:6px 0 0 26px;"> <h4 style="font-weight:bold; margin-top:0;">用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>构建iframe效果</h4> <p>来自:<a href="http://homepage.yesky.com/" target="_self">天极网页陶吧</a></p> <p>B. 绝对定位模拟iframe,滚动条在外边</p> </div> </div> <div id="content"> <p>·<a class="grey-s" href="http://homepage.yesky.com/485/2354485.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">仅用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>编写无限分级弹出菜单</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/442/2354442.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">浏览器滚动条的参数总结</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/436/2354436.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">引入<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a><a class='Channel_KeyLink' href='http://edu.itbulo.com/web/hc/<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>/'>样式表</a>的四种方式介绍</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/424/2354424.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">两种方式实现的文字竖排效果</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/336/2352836.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">网页设计高级布局40例参考</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/251/2352751.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">从GMail认识W3C标准和Ajax</a></p> </div> </body> </<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>> #p#分页标题#e#


滚动条在里边

  引用:
HTML { height:100%; max-height:100%; border:0; overflow:hidden;}
* HTML { padding:100px 0 50px 0;}
body { height:100%; max-height:100%; margin:0; overflow:hidden;}

#content { position:absolute; top:100px; bottom:50px; left:0; right:0; z-index:3; width:100%; overflow:auto;}
* HTML #content { top:100px; bottom:0; height:100%;}

#head { position:absolute; margin:0; top:0; left:0; width:100%; height:100px; background:#f00; z-index:5;}
#foot { position:absolute; margin:0; bottom:0; left:0; width:100%; height:50px; z-index:5; background:#f00;}


效果演示代码:

<!DOCTYPE <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> PUBLIC "-//W3C//DTD X<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> 1.0 Transitional//EN" "http://www.w3.org/TR/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>1/DTD/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>1-transitional.dtd"> <<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> <a href="http://www.5ibk.cn/bkhtml/c21/" title="XML教程">XML</a>ns="http://www.w3.org/1999/x<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>"> <head> <meta http-equiv="Content-Type" content="text/<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>; charset=utf-8" /> <title>用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>构建iframe效果 - <a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a> Iframe - RexSong.com</title> <style type="text/<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>"> * { font:12px Arial;} <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> { height:100%; max-height:100%; border:0; overflow:hidden;} * <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> { padding:100px 0 50px 0;} body { height:100%; max-height:100%; margin:0; overflow:hidden;} #content { position:absolute; top:100px; bottom:50px; left:0; right:0; z-index:3; width:100%; overflow:auto;} * <a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a> #content { top:100px; bottom:0; height:100%;} #head { position:absolute; margin:0; top:0; left:0; width:100%; height:100px; background:#ccc; z-index:5;} #foot { position:absolute; margin:0; bottom:0; left:0; width:100%; height:50px; z-index:5; background:#ccc;} </style> <script type="text/<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">JavaScript</a>"> _uacct = "UA-67927-3"; urchinTracker(); </script> </head> <body> <div id="head"> <div style=" padding:12px 0 0 10px;_padding:6px 0 0 10px;"> <h4 style="font-weight:bold; margin-top:0;">用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>构建iframe效果</h4> <p>来自:<a href="http://homepage.yesky.com/" target="_self">天极网页陶吧</a></p> <p>B. 绝对定位模拟iframe,滚动条在里边</p> </div> </div> <div id="content"> <p>·<a class="grey-s" href="http://homepage.yesky.com/485/2354485.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">仅用<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>编写无限分级弹出菜单</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/442/2354442.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">浏览器滚动条的参数总结</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/436/2354436.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">引入<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a><a class='Channel_KeyLink' href='http://edu.itbulo.com/web/hc/<a href="http://www.5ibk.cn/bkhtml/c23/" title="CSS教程">CSS</a>/'>样式表</a>的四种方式介绍</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/424/2354424.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">两种方式实现的文字竖排效果</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/336/2352836.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">网页设计高级布局40例参考</a><br /> ·<a class="grey-s" href="http://homepage.yesky.com/251/2352751.s<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>">从GMail认识W3C标准和Ajax</a></p> </div> </body> </<a href="http://www.5ibk.cn/bkhtml/c22/" title="HTML/JavaScript教程">HTML</a>>#p#分页标题#e#

版权声明:本文由驱动中国整理发布,转载需注明出处与原文链接。如有疑问请联系 editor@qudong.com
本文价值 成为第一个评分的人
登录后为本文打分
网友评论0 条评论
正在回复 的评论取消
评论加载中…
🔐

登录后参与互动

评论、点赞均可赚积分
连续签到、邀请好友也有奖励 🎁

电脑端: 微信扫码登录 微信内: 一键登录

微信扫一扫

打开微信「扫一扫」,分享本文到朋友圈或好友