1、框架窗口基本构造:

框架窗口紧张包含2部分,一个是框架集,一个是详细的框架文件。

框架集便是存放框架构造的文件,也是访问框架文件的入口,如果网页由高下2个框架窗口组成,那么除了这2个窗口的html文件,还有一个总的框架集文件。

html5如何做边框拖动前端入门网页中应用frame框架 React

框架文件是每个显示区域对应的html文件,如下示例:

index.html

<html><head> <title>框架页面</title></head><body> <frameset> <frame src=&#34;top.html"></frame> <frame src="bottom.html"></frame> </frameset> </body></html>

如上index.html 便是框架集文件,在这个框架集文件中定义了页面划分成高下2部分,分别对应top.html 和 bottom.html 2个框架窗口文件。

2、框架窗口分割

框架页面分割办法是在框架集frameset通过rows 或 cols 属性定义的,一样平常按分割类型分为以下几种:

水平分割窗口垂直分割窗口嵌套分割窗口

2.1 水平分割窗口

将页面按水平方向分割,也便是高下构造,语法:

<frameset rows="窗口1高度,窗口2高度,"> <frame src="top.html"></frame> <frame src="bottom.html"></frame> </frameset>

在该语法中,rows 可以设置多个值,每个值对应一个框架窗口垂直高度,它的值可以利用像素单位或百分比单位。

如下示例:

<html><frameset rows="25%,50%,25%"> <frame src="/example/html/frame_a.html"> <frame src="/example/html/frame_b.html"> <frame src="/example/html/frame_c.html"></frameset></html>

显示效果:

比如上面这个,被从上到下分割成3个窗口,高度依次是25%,50%,25%。

2.2 垂直分割窗口

沿着页面垂直方向分割,也便是旁边构造的多窗口页面。
语法如下:

<frameset cols="窗口1宽度,窗口2宽度,"> <frame src="left.html"></frame> <frame src="right.html"></frame> </frameset>

在该语法中,cols 可以设置多个值,每个值对应一个框架窗口水平宽度,它的值可以利用像素单位或百分比单位。

示例:

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

显示效果:

比如上面这个,被从左到右分割成3个窗口,宽度依次是25%,50%,25%。

2.3、嵌套分割窗口

嵌套窗口便是在一个页面既有水平分割又有垂直分割的窗口,如下示例:

先水平分割再垂直分割

<frameset rows="50%,50%"><frame src="/example/html/frame_a.html"><frameset cols="25%,75%"><frame src="/example/html/frame_b.html"><frame src="/example/html/frame_c.html"></frameset></frameset>

显示效果:

先垂直分割再水平分割

<frameset cols="50%,50%"><frame src="/example/html/frame_a.html"><frameset rows="25%,75%"><frame src="/example/html/frame_b.html"><frame src="/example/html/frame_c.html"></frameset></frameset>

显示效果:

理论上可以无限嵌套,是不是很好玩。

2.4、noframes

当浏览器支配frame 时会显示noframes 中的内容。
如下代码

<html><frameset rows="50%,50%" frameborder="1" framespacing="100" bordercolor="blue"><frame src="/example/html/frame_a.html"><frameset cols="25%,75%" frameborder="0" bordercolor="orange"><frame src="/example/html/frame_b.html"><frame src="/example/html/frame_c.html"></frameset></frameset></html>

效果显示:

框架集的属性

1、设置边框 —— frameborder

frameborder 即是0时不显示边框,默认显示。

2、边框宽度 —— framespacing

在html5中无效。

3、边框颜色 —— bordercolor

如下代码:

<html><frameset rows="50%,50%" frameborder="1" framespacing="100" bordercolor="blue"><frame src="/example/html/frame_a.html"><frameset cols="25%,75%" frameborder="0" bordercolor="orange"><frame src="/example/html/frame_b.html"><frame src="/example/html/frame_c.html"></frameset></frameset></html>

效果:

详细可以参考这里 https://www.cnblogs.com/lavenderzh/archive/2012/04/09/2438803.html 查看这几个属性的关系。

框架页面属性

1、页面源文件 —— src

便是每个框架窗口对应的html文件,这里可以是图片或其它文件。

<frame src="文件地址">

2、页面名称 —— name

给每个框架窗口设置名称,有助于链接或查找窗口。

<frame src="文件地址" name="页面名称">

3、禁止调度窗口尺寸 —— noresize

党员鼠标拖到框架边框时,会创造鼠标形状变成可拖动的,可以改不框架窗口宽度或高度。
如果不肯望改变窗口宽度或高度,可以利用noresize 属性。

如下示例:

<html><frameset cols="25%,50%,25%"> <frame noresize="noresize" src="/example/html/frame_a.html"> <frame src="/example/html/frame_b.html"> <frame src="/example/html/frame_c.html"></frameset></html>

窗口a是不可改变宽度的。

浮动框架 —— iframe

浮动框架是一种分外的框架,它是在主窗口中嵌套一个子窗口,也便是全体页面不是框架页面,但却包含了一个框架窗口。

示例:

<iframe name="名称" src="https://www.w3school.com.cn/" width="800px" height="600px"></iframe>

效果如下:

1、浮动框架边框 —— frameborder

frameborder 属性规定是否显示 iframe 周围的边框。
设置属性值为 "0" 就可以移除边框:

<iframe src="demo_iframe.htm" frameborder="0"></iframe>

显示效果:

2、链接到框架页面

通过 a 标签的 target 属性可以跳转到框架页面,示例如下:

<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <body><iframe src="http://www.runoob.com/" name="iframe_a"></iframe><p><a href="https://mp.toutiao.com/" target="iframe_a">头条号</a></p><p><a href="http://www.runoob.com/" target="iframe_a">菜鸟教程</a></p></body></html>

显示效果如下,点击下面2个链接,切换窗口。

总结

frame 和 iframe 浮动框架用场很广,比如可以实现页面局部刷新,在之前被广泛利用,但是现在基本不建议利用,它有很多问题,比如安全性,性能方面等。

当然有时也会利用iframe,比如打印pdf,下载文件等等。

上篇:前端入门——html 表单控件利用