iframe應用很普遍,通常的需求有兩種:
1,擷取iframe效果,就是帶一個捲軸,可以省不少版面。
2,要嵌一個頁面,實現架構連結。
如果不方便使用iframe,可以有如下解決方案:
第一種需求如果我們使用css布局來實現,即可以少一個頁面,也可以提高效率。
第二種需求可以採用xmlhttp遠程擷取。
A. 直接類比iframe
用層做容器#content { overflow:auto; height:200px; width:600px; background:#f00;}
效果示範:http://www.rexsong.com/blog/attachments/200601/02_150246_cssiframe1.htm
用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%;}
效果示範:http://www.rexsong.com/blog/attachments/200601/02_151517_cssiframe2.htm
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;}
效果示範:http://www.rexsong.com/blog/attachments/200601/02_151837_cssiframe3.htm
捲軸在裡邊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;}
效果示範:http://www.rexsong.com/blog/attachments/200601/02_153241_cssiframe4.htm
在IE6.0和FF1.5環境下測試通過