2009年5月12日星期二

frame和iframe的区别

frame和iframe的具体区别,总结如下:


1、frame不能脱离frameSet单独使用,iframe可以;


2、frame不能放在body中;如下可以正常显示:




<!--<body>-->

<frameset rows="50%,*">

<frame name="frame1" src="test1.htm"/>


<frame name="frame2" src="test2.htm"/>

</frameset>

<!--<body>-->


如下不能正常显示:



<body>

<frameset rows="50%,*">

<frame name="frame1" src="test1.htm"/>


<frame name="frame2" src="test2.htm"/>

</frameset>

<body>

3、嵌套在frameSet中的iframe必需放在body中;如下可以正常显示:




<body>

<frameset>

<iframe name="frame1" src="test1.htm"/>


<iframe name="frame2" src="test2.htm"/>

</frameset>

</body>


如下不能正常显示:



<!--<body>-->

<frameset>

<iframe name="frame1" src="test1.htm"/>


<iframe name="frame2" src="test2.htm"/>

</frameset>

<!--</body>-->


4、不嵌套在frameSet中的iframe可以随意使用;

如下均可以正常显示:



<body>

<iframe name="frame1" src="test1.htm"/>


<iframe name="frame2" src="test2.htm"/>

</body>




<!--<body>-->


<iframe name="frame1" src="test1.htm"/>

<iframe name="frame2" src="test2.htm"/>


<!--</body>-->

5、frame的高度只能通过frameSet控制;iframe可以自己控制,不能通过frameSet控制,如:



<!--<body>-->

<frameset rows="50%,*">

<frame name="frame1" src="test1.htm"/>


<frame name="frame2" src="test2.htm"/>

</frameset>

<!--</body>-->



<body>

<frameset>

<iframe height="30%" name="frame1" src="test1.htm"/>

<iframe height="100" name="frame2" src="test2.htm"/>


</frameset>

</body>

6、如果在同一个页面使用了两个以上的iframe,在IE中可以正常显示,在firefox中只能显示出第一个;使用两个以上的frame在IE和firefox中均可正常


以上代码在IE7和firefox2.0中测试。