XHTML 框架概述

框架的使用可以让浏览器“分割”成多个页面显示内容,常用于如网站后台管理这些菜单项目固定,且对美观性和搜索引擎要求不高的地方。

框架的优缺点

  • 框架方便制作栏目导航,操作各栏目时不需要重新载入整个页面
  • 框架会产生较多页面,不易管理
  • 不容易打印整个框架页面
  • 对搜索引擎不友好

基于框架的以上特点,目前框架几乎只用于系统后台管理中,而不建议使用于页面展示中。

上下框架

我们以最简单的上下框架来分析框架的原理。

创建一个名字为frame.html新页面,关键代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html>
<title>框架示例</title>
</head>
<frameset rows="15%,*">
<frame src="frame_top.html" />
<frame src="frame_main.html" />
<noframes>
<body>
<p>对不起,您的浏览器不支持框架!</p>
</body>
</noframes>
</frameset>
</html>

注意:使用框架必须将 DTD 设置为 xhtml1-frameset 。

再创建两个普通html页面,分别为 frame_top.html 和 frame_main.html ,内容可以是任意普通文本之类的。

将以上三个页面保存在同一目录下。在浏览器里打开 frame.html ,在 frame.html 里将显示上下两部分内容,分别对应的是 frame_top.html 和 frame_main.html 。

上下框架示意图:

语法分析

  1. 框架要是用其特有的 DTD 声明(xhtml1-frameset)。
  2. 框架标签为 <frameset></frameset> ,它表示设置一个框架。
  3. 标签的 rows 属性确定了框架是上下分割以及分割的比例。
  4. <frame /> 标签的 src 属性指定各个框架对应的 html 页面来源。
  5. <noframes> 标识浏览器不支持框架时显示的内容。

混合框架

该混合框架先将页面做上下分割,然后再将下面的页面做左右分割。

新创建一普通 html 页面,命名为 frame_left.html 并存储于和 frame.html 同一目录下。

将 frame.html 代码变更如下:

<html>
<title>框架示例</title>
</head>
<frameset rows="15%,*">
<frame src="frame_top.html" />
<frameset cols="15%,*">
<frame src="frame_left.html" />
<frame src="frame_main.html" />
</frameset>
<noframes>
<body>
<p>对不起,您的浏览器不支持框架!</p>
</body>
</noframes>
</frameset>
</html>

该例子示意图:

语法分析

  1. 如果要做再次分割,可以在框架标签内嵌套框架标签来实现。
  2. 标签的 cols 属性确定了框架是左右分割以及分割的比例。
  3. 我们可以根据框架的原理以及 rows 和 cols 属性来制作更为复杂的框架结构。

【转】frameset 框架集使用语法,常用语后台。的更多相关文章

  1. Frameset框架集的应用

    Frameset框架集常用于写网站后台页面,大多数"T字型"布局后台页面,就是应用Frameset框架集来做的.Franeset框架集的优点是,他可以在同浏览器窗口显示不同页面内容 ...

  2. asp.net Frameset框架集的嵌套使用

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Frame.aspx.cs& ...

  3. frameset框架集

    frame使用注意事项: 1.frame不能脱离frameset单独使用 2.frame不能放在body标签中,不然不起效果. 3.frame的高度只能由frameset来决定. frameset:是 ...

  4. Frameset 框架集 导航栏 的使用

    在index.jsp中 使用jsp标签转发到制定页面 <body> <jsp:forward page="/admin/frame.jsp"></js ...

  5. html5 frameset5内嵌框架集

    利用html5 frameset内嵌框架简单做一个网页,网页的布局大体如下: 我们可以将其分为四个部分: 第一部分:top图片栏 第二部分:left链接栏 第三部分:right内容栏 第四部分:网页整 ...

  6. 我给女朋友讲编程html系列(3) --html中的超链接标签-a标签 和 框架frame与框架集frameset

    我们浏览网页的时候,当单击某段文字或图片时,就会打开一个新的网页,这里面就使用了超链接. 就比如下图是一个导航类网页,当你单击某个链接就会打开新的网页. 比如,我拿我的qq空间“金河访谈”举例,新建一 ...

  7. HTML框架集之Frameset与Iframe简单应用

    首先我们要明白此框架集的作用: 实现在一个页面中访问多个html页面的目的Frameset的用法: //定义框架集<frameset><frame src="demo.ht ...

  8. 框架集 frameset

    框架集和内联框架的作用类似,都用于在一个页面中引入其他的外部的页面 框架集可以同时引入多个页面,而内联框架引入一个, 在h5标准中,推荐使用框架集,而不使用内联框架 使用 frameset 来创建一个 ...

  9. Frameset框架优缺点--来自新浪微博

    原文地址:http://blog.sina.com.cn/s/blog_4a4b1b010100p6ro.html HTML框架简述   一个浏览器窗体可以通过几个页面的组合来显示.我们可以使用框架来 ...

随机推荐

  1. Linux上常用的基本命令

    复制:copy [keysystem@localhost happydzy]$ cp file1 file2 [keysystem@localhost happydzy]$ ll total -rw- ...

  2. Jenkins与Docker的自动化CI/CD实战

    Jenkins与Docker的自动化CI/CD实战 互联网Java架构 2018-09-19 15:46:13 一.发布流程设计 工作流程: 开发人员提交代码到Git版本仓库:Jenkins人工/定时 ...

  3. Spark记录-Scala记录(基础程序例子)

    import scala.util.control._ object learnning { def main(args:Array[String]):Unit={ val n:Int=10 prin ...

  4. CF&&CC百套计划4 Codeforces Round #276 (Div. 1) A. Bits

    http://codeforces.com/contest/484/problem/A 题意: 询问[a,b]中二进制位1最多且最小的数 贪心,假设开始每一位都是1 从高位i开始枚举, 如果当前数&g ...

  5. bzoj千题计划193:bzoj2460: [BeiJing2011]元素

    http://www.lydsy.com/JudgeOnline/problem.php?id=2460 按魔力值从小到大排序构造线性基 #include<cstdio> #include ...

  6. .NET面试题系列(四)计算机硬件知识

    计算机的硬件组成 总线:贯穿整个系统的是一组电子管道(其实就是传输数据的线路),也就是总线.总线传送的是字,字的大小与系统相关,比如在32位操作系统当中, 一个字是4个字节. I/O设备:I/O设备是 ...

  7. HTML5 移动开发 (HTML5标签和属性)

       第一阶    1.如何使用HTML5中的新标签及属性    2.HTML5中的其它变化    3.HTML5的移动支持    4.使用HTML5开发移动WEB引用的理由 第二阶    HTML5 ...

  8. oracle的中文排序问题

    mysql中文排序有convert(name using gbk)这样的函数,于是研究了一下oracle中文排序: 使用拼音排序 SQL> select * from chineseordert ...

  9. 【ARTS】01_04_左耳听风-20181203~1209

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  10. Socket心跳包机制总结【转】

    转自:https://blog.csdn.net/qq_23167527/article/details/54290726 跳包之所以叫心跳包是因为:它像心跳一样每隔固定时间发一次,以此来告诉服务器, ...