html iframe和frame

来源:互联网 发布:网页游戏推荐知乎 编辑:程序博客网 时间:2024/05/16 07:03

前言

一般情况下,一个.html/.jsp文件,只有一个html文档。只有一个html文档的意思是,只有一个html/head/body标签。

即使一个.jsp包含了其他的.html/.jsp(这些.html/.jsp里面也有html/head/body标签),最终的页面(即浏览器看到的所有内容)也会忽略包含文件里的html/head/body标签。

但是,在web里,一个页面(即浏览器看到的所有内容)能不能包含多个html文档。答案是肯定的。使用frameset和frame标签就可以。

作用

一个页面为什么要包含多个html文档,或者说一个页面包含多个html文档有什么卵用?

最常见的一种用途是,一个网站的主要内容是由菜单和内容这2个板块组成(暂时忽略底部版权等等板块)。

这个时候,其实最简单的方法就是采用框架集和框架标签,因为每个框架都可以包含一个单独的html文档。具体来说是,
1、1个.html/.jsp文件包含了1个框架集标签和2个框架标签,框架标签分别是菜单和内容。
2、点击菜单超链接,将超链接的文档显示在内容框架。

举例

1、pushlet官方网站


2、大多数的API文档
3、订单系统后台

注意事项

框架集/框架标签与超链接标签结合使用


包含框架集标签和框架标签的.html/.jsp文件,不能再包含body以及body的子标签

1个包含了框架集标签和框架标签的.html/.jsp文件,不能再包含body以及body的子标签。也就是说,frameset/frame标签是与body互斥的,有了一个就不能有另外一个,也可以说,frameset/frame标签的目的就是要取代body标签,因为二者都是用来盛放内容的,只不过每个框架的内容(即html文档)是以框架标签的src属性这种方式来引用的。

其他

内联框架

内联框架标签(即iframe),与框架标签(即frame)的使用完全是一样的。
唯一的不同是,内联框架标签是出现在.html/.jsp文件里的,而且一定是出现在.html/.jsp文件里的,不然干嘛要加内联框架。

参考

1、《html&xhtml权威指南》:第11章-框架


0 0
原创粉丝点击