HTML框架学习
时间:2006-03-05 来源:dzter
HTML框架学习
一个应用有这样的需求:需要在同一个页上,一个区域的按钮事件能够引起指定另一部分区域的内容变化,所以想到框架,用了一下还蛮方便的。
先说明一下几个重要的概念如下:
<FRAMESET> :用以划分主视图,即将整个页面首先分为几个大的区域(每个区域是一个单独的.html,.asp,.aspx文件),可多层嵌入
rows: 20%, 80% rows跟在FRAMESET后面,用以划分当前要划分的行数,当前指将页面分成20%和80%上下两部分。
cols: 20%, 80% 同上,将当前页面分成20%和80%左右两部分。
<FRAME name=123 src="maincontrol_f.files/left.htm" target="dynamic">
这个是真正说明被框架所包含的单独文件的地方,src:位置,target:目标框架的名字,name:用以被其它页面的target属性所指向。
<NOFRAMES></NOFRAMES>此标签内的内容是,当用户的浏览器不支持frameset时所显示给用户看的内容。
有了以上的说明,看下面的内容就没有疑问了:
程序代码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">
<HTML>
<HEAD>
<TITLE>
这个页面包含框架。需要浏览器支持。
</TITLE>
<META http-equiv=content-type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1491" name=GENERATOR>
</HEAD>
<FRAMESET rows="20%, 80%" >//
<FRAME src="maincontrol_f.files/top.htm" scrolling="no" noresize frameborder="0">
<FRAMESET cols="15%, 85%">
<FRAME src="maincontrol_f.files/left.htm" target="dynamic">
<FRAME name=wwm src="maincontrol_f.files/main.htm" namo_target_frame="myframe" >
</FRAMESET>
<NOFRAMES>
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">
<p>这个页面包含框架。需要浏览器支持。</p>
</body>
</NOFRAMES>
</FRAMESET>
</HTML>
如果有一个文件成为多个链接的目标时(比如说一个html文件,被多个frame 的target属性所指定,作为替代在每一个frame里指定target属性的方法如下:,目标名称必须以字母开始。
上面的html文件里面跟在FRAME后的scrolling,noresize,frameborder,weight,height是它的一些常用属性,试试就知道了。
frameset的部分属性的意义如下:
name-- name of frame for targetting
src-- source of frame content
frameborder(1|0) -- request frame borders
marginwidth -- margin widths in pixels
marginheight -- margin height in pixels
scrolling (yes|no|auto) -- scrollbar or none
align -- vertical or horizontal alignment
height -- suggested height
width -- suggested width
除此以外,还有一个iframe的概念:用以在html文件中嵌入文件。示例如下:
程序代码 <BODY text=black vLink=purple aLink=red link=blue bgColor=white>
<iframe name="import_frame" width=580 height=80 src="11111.html" frameborder=auto>
</iframe>
<P> 1.aspx</P>
</BODY>
其常用的属性如下:
name:内嵌帧名称
width:内嵌帧宽度(可用像素值或百分比)
height:内嵌帧高度(可用像素值或百分比)
frameborder:内嵌帧边框
marginwidth:帧内文本的左右页边距
marginheight:帧内文本的上下页边距
scrolling:是否出现滚动条(“auto”为自动,“yes”为显示,“no”为不显示)
src:内嵌入文件的地址
style:内嵌文档的样式(如设置文档背景等)
allowtransparency:是否允许透明
说明:同一页面间的iframe框架内的所有元素均可相互访问,但前提是:所有页面都已被页面正确载入。这是个很好的事情,因为如果只是为了好看而用frameset却失去了互访能力就不值得了,至少我这样认为。
不过使用iframe也是有限制了,比如iframe的一些透明效果就需要浏览器支持的:
像以下的代码如果IE版本低于5.5就看不到效果了:
程序代码 <IFRAME ID="Frame1" SRC="transparentBody.htm" allowTransparency="true"></IFRAME>
<IFRAME ID="Frame2" SRC="transparentBody.htm" allowTransparency="true" STYLE="background-color: green"> </IFRAME>
<IFRAME ID="Frame3" SRC="transparentBody.htm"></IFRAME>
<IFRAME ID="Frame4" SRC="transparentBody.htm" STYLE="background-color: green"> </IFRAME>
可惜的是,在iframe里没有target属性来指定目标了。
而且关于iframe的使用也会使得制作网页的人有可能利用其溢出漏洞而攻击浏览者:
具体地讲,一个叫做SHDOCVW.DLL的负责翻译IFRAME、FRAME和EMBED标记的通用Windows DLL文件受到缓冲溢出攻击的影响。恶意人员通过构造一个恶意的HTML文件,在其 IFRAME 标记中的“SRC”和“NAME”参数包含超长字符串,就可以引发缓冲区溢出攻击。成功利用该漏洞可以执行任意代码。当用户浏览HTML网页或查看HTML格式的邮件时,如果其中包含恶意构造的HTML标记,有可能系统会被恶意人员远程接管。
[本日志由 曾鸿 于 2005-11-27 10:03 PM 编辑]
文章来自: 本站原创
引用通告地址: http://lespoirzzy.vicp.net:8080/pjblog2/trackback.asp?tbID=17
Tags: 『工作·学习』
先说明一下几个重要的概念如下:
<FRAMESET> :用以划分主视图,即将整个页面首先分为几个大的区域(每个区域是一个单独的.html,.asp,.aspx文件),可多层嵌入
rows: 20%, 80% rows跟在FRAMESET后面,用以划分当前要划分的行数,当前指将页面分成20%和80%上下两部分。
cols: 20%, 80% 同上,将当前页面分成20%和80%左右两部分。
<FRAME name=123 src="maincontrol_f.files/left.htm" target="dynamic">
这个是真正说明被框架所包含的单独文件的地方,src:位置,target:目标框架的名字,name:用以被其它页面的target属性所指向。
<NOFRAMES></NOFRAMES>此标签内的内容是,当用户的浏览器不支持frameset时所显示给用户看的内容。
有了以上的说明,看下面的内容就没有疑问了:
程序代码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">
<HTML>
<HEAD>
<TITLE>
这个页面包含框架。需要浏览器支持。
</TITLE>
<META http-equiv=content-type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1491" name=GENERATOR>
</HEAD>
<FRAMESET rows="20%, 80%" >//
<FRAME src="maincontrol_f.files/top.htm" scrolling="no" noresize frameborder="0">
<FRAMESET cols="15%, 85%">
<FRAME src="maincontrol_f.files/left.htm" target="dynamic">
<FRAME name=wwm src="maincontrol_f.files/main.htm" namo_target_frame="myframe" >
</FRAMESET>
<NOFRAMES>
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">
<p>这个页面包含框架。需要浏览器支持。</p>
</body>
</NOFRAMES>
</FRAMESET>
</HTML>
如果有一个文件成为多个链接的目标时(比如说一个html文件,被多个frame 的target属性所指定,作为替代在每一个frame里指定target属性的方法如下:,目标名称必须以字母开始。
上面的html文件里面跟在FRAME后的scrolling,noresize,frameborder,weight,height是它的一些常用属性,试试就知道了。
frameset的部分属性的意义如下:
name-- name of frame for targetting
src-- source of frame content
frameborder(1|0) -- request frame borders
marginwidth -- margin widths in pixels
marginheight -- margin height in pixels
scrolling (yes|no|auto) -- scrollbar or none
align -- vertical or horizontal alignment
height -- suggested height
width -- suggested width
除此以外,还有一个iframe的概念:用以在html文件中嵌入文件。示例如下:
程序代码 <BODY text=black vLink=purple aLink=red link=blue bgColor=white>
<iframe name="import_frame" width=580 height=80 src="11111.html" frameborder=auto>
</iframe>
<P> 1.aspx</P>
</BODY>
其常用的属性如下:
name:内嵌帧名称
width:内嵌帧宽度(可用像素值或百分比)
height:内嵌帧高度(可用像素值或百分比)
frameborder:内嵌帧边框
marginwidth:帧内文本的左右页边距
marginheight:帧内文本的上下页边距
scrolling:是否出现滚动条(“auto”为自动,“yes”为显示,“no”为不显示)
src:内嵌入文件的地址
style:内嵌文档的样式(如设置文档背景等)
allowtransparency:是否允许透明
说明:同一页面间的iframe框架内的所有元素均可相互访问,但前提是:所有页面都已被页面正确载入。这是个很好的事情,因为如果只是为了好看而用frameset却失去了互访能力就不值得了,至少我这样认为。
不过使用iframe也是有限制了,比如iframe的一些透明效果就需要浏览器支持的:
像以下的代码如果IE版本低于5.5就看不到效果了:
程序代码 <IFRAME ID="Frame1" SRC="transparentBody.htm" allowTransparency="true"></IFRAME>
<IFRAME ID="Frame2" SRC="transparentBody.htm" allowTransparency="true" STYLE="background-color: green"> </IFRAME>
<IFRAME ID="Frame3" SRC="transparentBody.htm"></IFRAME>
<IFRAME ID="Frame4" SRC="transparentBody.htm" STYLE="background-color: green"> </IFRAME>
可惜的是,在iframe里没有target属性来指定目标了。
而且关于iframe的使用也会使得制作网页的人有可能利用其溢出漏洞而攻击浏览者:
具体地讲,一个叫做SHDOCVW.DLL的负责翻译IFRAME、FRAME和EMBED标记的通用Windows DLL文件受到缓冲溢出攻击的影响。恶意人员通过构造一个恶意的HTML文件,在其 IFRAME 标记中的“SRC”和“NAME”参数包含超长字符串,就可以引发缓冲区溢出攻击。成功利用该漏洞可以执行任意代码。当用户浏览HTML网页或查看HTML格式的邮件时,如果其中包含恶意构造的HTML标记,有可能系统会被恶意人员远程接管。
[本日志由 曾鸿 于 2005-11-27 10:03 PM 编辑]
文章来自: 本站原创
引用通告地址: http://lespoirzzy.vicp.net:8080/pjblog2/trackback.asp?tbID=17
Tags: 『工作·学习』
相关阅读 更多 +