HTML框架frame与iframe详解


HTML框架

框架简介

通过使用框架,你可以在同一个浏览器窗口中显示不止一个页面。每份HTML文档称为一个框架,并且每个框架都独立于其他的框架。
使用框架的坏处:

  • 开发人员必须同时跟踪更多的HTML文档
  • 很难打印整张页面

整体框架

整体结构标签《frameset》

  • <frameset>将浏览器整个界面分割成多个的界面,与<frame>一起使用
  • 每一个frameset相当于一个大体框架,包含很多个frame。而每一个frame将相当于一个简单的界面;
  • frameset的基本属性包括:分行rows=“”和分列cols=“”
代码示例

<frameset cols="25%,50%,25%" frameborder="no" border="0" framespacing="0">

代码详解
  • border
    设置框架的边框粗细。
  • bordercolor
    设置框架的边框颜色。
  • frameborder
    设置是否显示框架边框。设定值只有0、1;
    0 表示不要边框,1 表示要显示边框。
  • cols
    纵向分割页面。其数值表示方法有三种:“30%、30(或者30px)、* ”;数值的个数代表分成的视窗数目且数值之间用“,”隔开。“30%”表示该框 架区域占全部浏览器页面区域的30%;“30”表示该区域横向宽度为30像素;“*”表示该区域占用余下页面空间。例 如:cols="25%,200,* " 表示将页面分为三部分,左面部分占页面30%,中间横向宽度为200像素,页面余下的作为右面部分。
  • rows
    横向分割页面。数值表示方法与意义与cols相同。
  • framespacing
    设置框架与框架间的保留的空白距离。
重要事项

不能在<frameset></frameset>标签里使用 <body></body> 标签。不过,如果需要为不支持框架的浏览器添加一个 <noframes> 标签,请务必将此标签放置在 <body></body> 标签中!

框架标签《frame》

frame属性
  • frame是<frameset>中的一个特定的窗口
  • frame>不能放在body里,否则无法正常显示;
  • frame的高度只能通过frameset控制
  • Frame所包含的内容是一个独立的个体,是可以独立显示的
代码示例
  <frameset>  
      <iframe   name="frame1"   src="test1.htm"/>  
      <iframe   name="frame2"   src="test2.htm"/>  
    </frameset> 

局部框架

iframe属性

  • iframe可以脱离frameset随意使用,也可嵌套在frameset里使用,不过嵌套在frameset里需要放置在body中。
  • iframe可以自己任意控制高度、宽度等;
属性描述
width定义iframe宽度
height定义iframe高度
frameborder是否显示框架周围的边框(值为1时显示,0则不显示)
scroling规定在iframe里是否显示滚动条(值:yes、no、auto)
src在iframe里显示链接的文档或网页
srcdoc在iframe中显示html内容

代码示例:
(代码引用自W3school)
scrolling属性、srcdoc属性

<html>
<body>

<h3>iframe 中始终显示滚动条:</h3>
<iframe src ="https://www.baidu.com" width="200" height="200" 

scrolling="yes">
  <p>Your browser does not support iframes.</p>
</iframe>

<h3>iframe 中从不显示滚动条:</h3>
<iframe src ="https://www.baidu.com" width="200" height="200" 

scrolling="no">
  <p>Your browser does not support iframes.</p>
</iframe>

<h3>iframe srcdoc属性:</h3>
<iframe srcdoc="<p>Hello world!</p>" 

src="/demo/demo_iframe_srcdoc.html">
  <p>Your browser does not support iframes.</p>
</iframe>

</body>
</html>

运行效果
在这里插入图片描述

frame与iframe区别

  • Frame与Iframe两者可以实现的功能基本相同,不过Iframe比Frame具有更多的灵活性。
    frame是整个页面的框架,iframe是内嵌的网页元素,也可以说是内嵌的框架
  • Iframe标记又叫浮动帧标记,可以用它将一个HTML文档嵌入在另一个HTML中显示。它和Frame标记的最大区别是在网页中嵌入的<Iframe></Iframe>所包含的内容与整个页面是一个整体,而<Frame></Frame>所包含的内容是一个独立的个体,是可以独立显示的。另外,应用Iframe还可以在同一个页面中多次显示同一内容,而不必重复这段内容的代码。
  • frame必须在frameset里 而frameset不能与body元素共存,也就说有frameset元素的文档只能是一个框架集。而iframe可以脱离frameset随意使用,也可嵌套在frameset里使用,不过嵌套在frameset里需要放置在body中。
  • frame是框架,由多个并列的网页构成 ,是固定的。只能四个方向上的。而iframe是内嵌的,比较灵活。但是因为灵活就会出现在不同的浏览器和分辨率下,页面布局会被打乱而影响网页整体观感。
  • <frame>用来把页面横着或竖着切开,
    <iframe>用来在页面中插入一个矩形的小窗口
    <frame>用于全页面
    <iframe>只用于局部
  • Frame用来控制页面格式,比如一本书,左边是章节目录,右边是正文,正文很长,看的时候要拖动,但又不想目录也被拖动得开不到了.因此最好将页面用Frame分成规则的2页,一左一右.
    而iframe则更灵活,不要求将整个页面划分,你可以在页面任何地方用iframe嵌入新的页面.
  • 8
    点赞
  • 61
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值