HTML框架结构标签(frameset)

第一次了解到竟然还有HTML框架结构标签()。为此小编在实例中应用了一下,但是在搭建框架之初就遇到 了问题。为此总结本博客,以便大家能及时解决问题。

什么是HTML框架结构标签(<frameset>)

通过使用框架,你可以在同一个浏览器窗口中显示不止一个页面。每份HTML文档称为一个框架,并且每个框架都独立于其他的框架。
详情参考:http://www.w3school.com.cn/html/html_frames.asp

需要实现的效果

如下图,我的也没中有三个html页的框架,TOP页是一个题目,LEFT是目录,RIGHT页是详情,当点击LEFT页中的不同按钮的时候,会将不同的内容也显示在RIGHT页中。
这里写图片描述

代码实现整体框架
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>网站后台框架页面</title>
    </head>
    <!-- 下面的frameset标签不能与body标签一起使用,详情参看上面的链接 -->
    <frameset rows="20%,*"><!-- rows表示水平切割,20%表示top页占整个页面的20%,*表示其余的占80% -->
        <frame src="top.html"/>
        <frameset cols="20%,*"><!-- cols表示垂直切割-->
            <frame src="left.html"/>
            <frame src="right.html"/>
        </frameset>
    </frameset>
</html>
代码实现——top.html
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        欢迎进入XXXX后台系统
    </body> 
</html>
代码实现——left.html
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <a href="#">会员管理</a>
        <a href="#">产品管理</a>
        <a href="#">员工管理</a>
        <a href="#">系统管理</a>
    </body> 
</html>
代码实现——right.html
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        会员用户信息
    </body> 
</html>

完成上面代码后,我们先看一下效果图
这里写图片描述
有图可以看出,我们这里是有问题的:
1、在刚刚打开网页后,在未点击左侧的目录按钮的时候,左侧是不应该有内容的。只有在点击“会员管理”按钮的时候才有内容。
2、需要在点击“会员管理”按钮的时候才能出现会员信息页。

<!--为此我先对left.html中的目录代码稍作修改,让其每个目录按钮都对应着一个信息页面。-->

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
         <a href="right.html">会员管理</a><br/></br><!--修改的地方-->
        <a href="#">产品管理</a><br/></br>
        <a href="#">员工管理</a><br/></br>
        <a href="#">系统管理</a><br/></br>
    </body> 
</html>

此时,我们刷新页面,得出的依旧如刚才的效果如下:
这里写图片描述
此时我们再次点击“会员管理”按钮出现如下情况。目录页消失 了,变成了信息页。
这里写图片描述
经过查询才知道,这个框架需要和超链接中的target属性一起使用。target属性既可以使用默认的属性值,也可以自定义属性值。为此,我们对(框架页面)和left.html页面都做一下修改。

代码实现——left.html
<!--left.html-->

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
         <a href="right.html" target="right_demo">会员管理</a><br/></br>      
         <!--修改的地方:我们自定义超链接的target属性为“right_demo”位置,right_demo仅仅是为了让大家好辨识,以免混淆,名字可以自定义-->
        <a href="#">产品管理</a><br/></br>
        <a href="#">员工管理</a><br/></br>
        <a href="#">系统管理</a><br/></br>
    </body> 
</html>
代码修改——整体框架页面

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>网站后台框架页面</title>
    </head>

    <frameset rows="20%,*">
        <frame src="top.html"/>
        <frameset cols="20%,*">
            <frame src="left.html"/>
            <frame name="right_demo"/><!--修改位置:将src属性换成了name属性-->
        </frameset>
    </frameset>
</html>

这样我们的功能就实现了,在刚刚打开页面的时候,右侧的页面中没有任何内容,仅仅在点击“会员管理”按钮后显示相关内容。

  • 13
    点赞
  • 75
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
### 回答1: `frameset` 标签HTML 中用于创建框架布局的标签。它可以用来定义整个页面的布局,每个框架都可以加载一个独立的 HTML 文件。使用方法如下: ``` <frameset cols="25%,50%,25%"> <frame src="frame_a.html"> <frame src="frame_b.html"> <frame src="frame_c.html"> </frameset> ``` 其中 `cols` 属性指定每个框架占整个页面的宽度比例,可以用百分比或像素值表示。同样的,还有一个 `rows` 属性,可以指定每个框架占整个页面的高度比例。 需要注意的是,目前大多数网站已经不再使用 `frameset` 标签,因为它存在一些限制,如:不利于搜索引擎优化,不利于响应式设计等。相比之下,更推荐使用 CSS 布局。 ### 回答2: HTMLFrameset标签是用来创建网页框架标签,它允许在一个页面中划分出多个独立的区域,每个区域可以分别载入不同的网页。Frameset标签通常与Frame标签一起使用,Frame标签用来定义每个区域载入的网页内容。Frameset标签可以实现网页的多窗口显示,提升页面的用户体验。 Frameset标签的基本语法如下: ``` <frameset cols="*,*" rows="*,*"> <frame src="page1.html"> <frame src="page2.html"> <frame src="page3.html"> <frame src="page4.html"> </frameset> ``` 其中,Cols和Rows属性用于定义Frameset标签划分成的区域的大小和数量,可以指定百分比或固定像素值。Cols表示水平方向上的分割线数量和位置,Rows表示垂直方向上的分割线数量和位置。上面的代码中,Frameset被分成了4个区域,第一行两个区域,第二行也是两个区域。每个Frame标签的Src属性指向不同的网页,表示每个区域所要载入的内容。 在使用Frameset标签时,需要注意以下几点: 1. Frameset标签必须包含在HTML文档的<body>标签中,而且只能是<body>标签中的第一个元素。 2. Frameset标签不能同时与<head>或<body>标签一起使用,否则会导致页面无法正常显示。 3. Frameset标签不能与其他类似的页面布局标签一起使用,例如<table>或<div>,否则会出现布局冲突的情况。 4. 当网页中含有Frameset标签时,搜索引擎可能无法正确地索引页面内容,因此Frameset标签在现代网页设计中已经不再常用。 总之,Frameset标签在过去被广泛使用,它为网页提供了多窗口显示的功能,提升了页面的交互性和用户体验。但是,由于其一些弊端,现在还有更好的技术可供选择,使得网页视图的划分成为更加简单和灵活。 ### 回答3: HTML中的frameset标签是用来创建基于框架的Web页面的一种方式。当你使用frameset标签时,你可以将一个页面分成几个部分,每个部分都是单独的页面。这种技术被称为框架网页设计。 在创建框架网页时,需要使用两个标签frameset和frame。Frameset标签定义了页面中的框架区域,而frame标签指定了每个框架中要加载的不同HTML文档。frame标签通常嵌套在frameset标签内。 在使用frameset标签时,需要注意以下几点: 1. Frameset标签必须在HTML文档的顶部位置。 2. Frameset标签必须包含一个或多个frame标签,以指定将要加载的文档。frameset标签的属性可以在HTML文档中设置,这些属性包括:cols,rows等。 3. Frameset标签可以有多个frame标签,每个frame标签指定一个屏幕区域,以便将内容作为单独的页面来加载。 4. 如果希望在不同框架之间传递信息,则必须使用JavaScript或cookie等技术实现。 尽管HTML框架的使用在过去十年中已经逐渐减少,但是它仍然是一种实现特殊需求的有效方式。例如,在Web应用程序中使用框架非常普遍,因为这种技术可以让用户通过单个页面访问许多不同的应用程序模块。但与此同时,框架网页的缺点是它的SEO被搜索引擎忽略。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

aiming66

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值