基本上<frame>标签和<iframe>标签的区别是:
当我们使用<frame>标签时,网页的内容由仅使用<frame>和<frameset>标签创建的框架组成(不使用<body>标签 ) 为:
<html>
<head>
<title>HTML Frames</title>
</head>
<frameset rows="20%,70%,10%">
<frame name="top" src="/html/top.html" />
<frame name="main" src="/html/main.html" />
<frame name="bottom" src="/html/bottom.html" />
</frameset>
</html>
当我们使用<iframe>时,网页内容不包含框架,网页内容是使用<body>标签创建的(并且不使用<frame>和<frameset>标签) 为:
<html>
<head>
<title>HTML Iframes</title>
</head>
<body>
<p>See the video</p>
<iframe width="854" height="480" src="https://www.youtube.com/embed/2eabXBvw4oI"
frameborder="0" allowfullscreen>
</iframe>
</body>
</html>
所以<iframe> 只是将一些其他来源的文档带到网页上。 <iframe> 用于指定内联框架或浮动框架。万维网联盟 (W3C) 在 HTML 4.01 中包含了<iframe> 功能。
<frameset> 标签用于创建带有标签<frame> 的框架,而<iframe> 实现<frame> 和<frameset> 标签的功能。与<frame>标签不同,<iframe>标签也可以放在<body>标签内。
<iframe> 的放置很容易,程序员可以轻松地将<iframe> 标签放在其他网页标签中,如果他/她愿意,还可以添加几个<iframe> 标签。另一方面,在<frameset> 中放置<frame> 标签有点复杂。
注意: <frame> 标签和 <frameset> 标签在 HTML5 中已弃用
所以现在不推荐使用<frame> 和<frameset> 标签,因此Web 开发人员使用<body> 标签来创建网页内容并在网页中嵌入一些其他来源的文档<iframe> 标签被使用。但是即使<frame>标签也被用来在网页中嵌入其他来源的文档,甚至<iframe>标签也被用来创建框架。