一、两者的相同点和不同点

相同点:
iframe 和frameset都是html布局的框架布局
不同点:
iframe是一个内联框架,是在页面里生成内部框架
frameset定义一个框架集,包含多个子框架,每个框架都是独立的文档

二、iframe标签

iframe是个内链框架,是在页面里生成个内部框架

2.1格式

<iframe src=""></iframe>

2.2属性

frameborder {int}:是否显示框架的边框;【】0  不显示  1 显示

src
{URL}:指定一个资源(如网页、图片)的uri; scrolling {boolean}:是否显示框架的滚动条;【yes/no/auto】有兼容性问题 noresize 无法调整框架的大小;【noresize="noresize"】 name 框架的名称。

2.3范例

 <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.clearfloat:after{display:block;clear:both;content:"";visibility:hidden;}
.clearfloat{zoom:1}
body{
height:90vh;
}
.box{
height:100%;
}
.left{
float:left;
}
.right{
height:100%;
overflow: hidden;
border:1px solid red;
}
</style>
</head>
<body>
<div class="box clearfloat">
<div class="left">
<input type="button" name="aa" value="国家" onclick="clickFn('input')"/>
<input type="button" name="aa" value="星球" onclick="clickFn('input2')"/>
</div>
<div class="right">
<iframe id="mainIframe" style="width:100%;height:100%; " name="mainIframe" src="input.html" frameborder="0" scrolling="auto" ></iframe>
</div>
</div>
<script>
function clickFn(src){
window.open(src +'.html','mainIframe');
          //document.getElementById('mainIframe').src = src +'.html';
}
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.clearfloat:after{display:block;clear:both;content:"";visibility:hidden;}
.clearfloat{zoom:1}
body{
height:90vh;
}
.box{
height:100%;
}
.left{
float:left;
}
.right{
height:100%;
overflow: hidden;
border:1px solid red;
}
</style>
</head>
<body>
<div class="box clearfloat">
<div class="left">
<input type="button" name="aa" value="国家" onclick="clickFn('input')"/>
<input type="button" name="aa" value="星球" onclick="clickFn('input2')"/>
</div>
<div class="right">
<iframe id="mainIframe" style="width:100%;height:100%; " name="mainIframe" src="input.html" frameborder="0" scrolling="auto" ></iframe>
</div>
</div>
<script>
function clickFn(src){
window.open(src +'.html','mainIframe');
          //document.getElementById('mainIframe').src = src +'.html';
}
</script>
</body>
</html>

效果:

2.4注意事项

在 "<iframe>我是内容</iframe>" 内添加内容时,在展示页面不会显示添加的内容。所以还是使用src属性指定一个页面吧。

三、frameset标签

frameset 标签 定义一个框架集,包含多个框架,每个框架都有独立的文档

3.1 格式

<frameset cols="25%,50%,25%">
<frame src="frame_a.htm"></frame>
<frame src="frame_b.htm"></frame>
<frame src="frame_c.htm"></frame>
<noframes></noframes>
</frameset>

3.2子项说明

<frame src=a.htm /> :子框架

<noframes></noframes>:浏览器不支持此框架的时,显示的内容。

3.3属性

frameset 属性:
  rows :表示子框架按行的样式布局(

)。以2个子框架为例:rows="30%,*" ,表示第一个框架占整个页面30%的高度,第二个占剩下的;
  cols :表示子框架按列的样式布局(

)。以2个子框架为例:cols="30%,*" ,表示第一个框架占整个页面30%的长度,第二个占剩下的;
  noresize="noresize" :表示不调整子框架的范围。

frame
属性:
  src :指向一个资源(如页面、图片等)的URI;   name :指定框架的名称,以便进行框架间的操作。

3.4注意事项

使用frameset标签时,注意要去掉外层的<body></body>标签。
 1.<iframe>优点:

     解决加载缓慢的第三方内容如图标和广告等的加载问题
Security sandbox
并行加载脚本 2.<iframe>的缺点: *iframe会阻塞主页面的Onload事件; *即时内容为空,加载也需要时间
*没有语意

【html】 iframe 和 frameset 的区别的更多相关文章

  1. HTML iframe 和 frameset 的区别

    转自:http://www.cnblogs.com/polk6/archive/2013/05/24/3097430.html HTML iframe 和 frameset 的区别 iframe 和 ...

  2. html Frame、Iframe、Frameset 的区别 详细出处参考:http://www.jb51.net/web/22785.html

    10.4.1 Frameset与Frame的区别首先讲解Frameset与Frame之间的区别. 用来划分框架,每一个框架由标记.必须在之内使用,代码如下: 在上面的例子当中,把页面分为左右两个部分, ...

  3. iframe与frameset有什么区别

    frame,iframe,frameset 的区别 <FRAMESET> <FRAME><NOFRAMES><IFRAME>欲明白本篇[HTML剖析]之 ...

  4. 使用iframe的优缺点,为什么少用iframe以及iframe和frame的区别。

    注:HTML5不再支持使用frame,iframe只有src 属性一.使用iframe的优缺点优点:1.程序调入静态页面比较方便;2.页面和程序分离;缺点:1.iframe有不好之处:样式/脚本需要额 ...

  5. html/css基础篇——iframe和frame的区别【转】

    转自共享圈的使用iframe的优缺点,为什么少用iframe以及iframe和frame的区别.其中本人不认同的地方有做小修改 注:HTML5不再支持使用frame,iframe只有src 属性 一. ...

  6. 详解iframe与frame的区别

    iframe与frame的区别 一.使用iframe的优缺点 优点: 1.程序调入静态页面比较方便; 2.页面和程序分离; 缺点: 1.iframe有不好之处:样式/脚本需要额外链入,会增加请求.另外 ...

  7. 使用iframe 或frameset框架退出不成功

    iframe .frameset框架有时登录界面加载在框架当中,但我们想直接到登录界面,这时我们可以使用js来实现.if(window!=top) { top.location.href=locati ...

  8. html部分---表单、iframe、frameset及其他字符的用法(以及name、id、value的作用与区别);

    <form action="aa.html" method="post/get"> /action的作用是提交到..,methed是提交方法,用po ...

  9. iframe与frameset(转载)

    frameset 在一个页面中设置一个或多个框架 不能嵌套在body标签里 frameset        它称为框架标记,是用来告知HTML文件是框架模式,并且设定可视窗口怎么分割 fram     ...

随机推荐

  1. Navicat 12 for MySQL最新版激活(注册机)(转)(亲测有效)

    Navicat 12 for MySQL最新版激活(注册机)(转)(亲测有效) 一.总结 一句话总结: 1.卸载自己机器上面的Navicat,安装下载的包里面的Navicat安装包,不然可能不行 2. ...

  2. linux 下项目的发布

    [wangq10@VM000001865 logs]$ [wangq10@VM000001865 ~]$ ls[wangq10@VM000001865 logs]$ apache-tomcat-7.0 ...

  3. mybatis映射文件祥解(StudentMapper.xml)

    1)以下是StudentMapper.xml文件,提倡放在与实体同目录下,文件名任意 <?xml version="1.0" encoding="UTF-8&quo ...

  4. [Java复习] 集合框架 Collection

    Q1 Collection java的集合以及集合之间的继承关系? 数组和链表的区别? 固定长度,连续内存,不能扩展,随机访问快,插入删除慢.链表相反 List, Set, Map的区别? List, ...

  5. [Distributed ML] Yi WANG's talk

    王益,分布式机器学习的践行者,他的足迹值得后来者学习. 膜拜策略: LinkedIn高级分析师王益:大数据时代的理想主义和现实主义(图灵访谈)[心路历程] 分布式机器学习的故事-王益[历史由来] 分布 ...

  6. phpfpm开启pm.status_path配置,查看fpm状态参数

    php-fpm配置 pm.status_path = /phpfpm_status nginx配置 server {    root /data/www;    listen 80;    serve ...

  7. vue中如何编写可复用的组件?

    原文地址 Vue.js 是一套构建用户界面的渐进式框架.我们可以使用简单的 API 来实现响应式的数据绑定和组合的视图组件. 从维护视图到维护数据,Vue.js 让我们快速地开发应用.但随着业务代码日 ...

  8. 从Myeclipse到IntelliJ IDEA-——让你摆脱鼠标,全键盘操作

    注:本文是对原文章(https://blog.csdn.net/luoweifu/article/details/13985835)做的补充 快捷键对比 Myeclipse IDEA 说明 Ctrl+ ...

  9. Linux(CentOS)下安装tesseract-ocr以及配置依赖leptonica

    下载 wget https://github.com/tesseract-ocr/tesseract/archive/4.1.0.tar.gz wget http://www.leptonica.or ...

  10. 那些年踩过的坑之Redis报错:All sentinels down, cannot determine where is mymaster master is running...

    1. 异常信息: All sentinels down, cannot determine where is mymaster master is running... 通过测试: @Test pub ...