一.HTML文档中经常使用的标记有文字标记、段落标记、列表标记、超链接标记、图像标记、表格标记、框架标记和多媒体标记,以下对这些经常使用标记进行介绍:
1.文字标记:文字是网页重要的组成部分之中的一个,通过使用标题标记、文字格式标记和文字样式标记来改变枯燥乏味的文字。能够使浏览者更有效的浏览网页。以下对标题标记、文字格式标记和文字样式标记进行介绍:
1.1.标题标记<hn>...</hn>:
(1).在浏览网页时经常看到一些标题文字,用来划分各个章节,在HTML文档中能够使用标题标记来指明页面上的标题。
标题标记包括6种标记,分别表示6个级别的标题。每一级别的字体大小都有明显的区分,从1~6以递减的形式表示,1级标题的字号为最大,6级标题的字号为最小。语法格式例如以下:
<h1>标题1</h1> <h2>标题2</h2> ......
(2).接下来附上一个标题标记的样例,使用标题标记来显示不同级别的标题,代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>标题标记演示样例</title> </head> <body> <h1>学习JavaScript</h1> <h2>学习JavaScript</h2> <h3>学习JavaScript</h3> <h4>学习JavaScript</h4> <h5>学习JavaScript</h5> <h6>学习JavaScript</h6> </body> </html>
执行效果就不附上来了,自己实践看效果。
(3).默认情况下,全部浏览器对标题都採用左对齐方式,但能够使用对齐属性align,使标题右对齐或者居中,把上述主体部分的代码改为例如以下代码:
<body> <h1 align="center">学习JavaScript</h1> <h2 align="left">学习JavaScript</h2> <h3 align="right">学习JavaScript</h3> </body>
观察效果。居中对齐设置align属性值为center。右对齐设置align属性值为right。
1.2.文字格式标记<font>...</font>:
(1).在网页中普通文字信息是不可缺少的。为了使页面效果变得更加美观。能够使用文字格式标记改变枯燥的文字信息。
文字格式标记用于设置文字大小、字体效果和文字颜色,其经常使用属性例如以下所看到的:
— size属性:此属性用来设置文字的字号,文字的字号能够设置为1~7。也能够设置为+1~+7或者是-1~-7。默认文字大小为3号。
— face属性:此属性用来设置文本的字体效果,能够设置一个或多个字体名称。使用多个字体的情况下,默认使用第一个字体,假设第一种字体不存在。则使用另外一种字体,以此类推。假设设置的多个字体都不存在将使用默认字体。中文默觉得宋体,英文默觉得Times New Roman。
— color属性:此属性用来设置文字的颜色,其值能够设置为颜色的名称,即红色可设置为red。也能够设置为十六进制的颜色代码。即#FFFFCC,默认值为黑色。
(2).这里附上一个样例。代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> </head> <body> <font size="+4" face="MS Serif, New York, serif" color="blue">I love you</font> <br> <font size="-1" face="华文琥珀" color="#FFCCFF">爱HTML</font> </body> </html>
自己实践,观察效果。
1.3.文字样式标记:
(1).在浏览页面时,经常能够看到页面中会出现一些特殊样式的文字。比如粗体字、斜体字、带删除线的文字等。
这些样式能够使用HTML文档提供一些文字样式标记来实现。经常使用的文字样式标记及说明例如以下:
— <b>...</b>样式标记、<strong>...</strong>样式标记:设置文字为粗体字样式。
— <i>...</i>样式标记、<em>...</em>样式标记:设置文字为斜体字样式。
— <u>...</u>样式标记:设置为带下划线的文字。
— <sup>...</sup>样式标记:设置文字为上标样式。
— <sub>...</sub>样式标记:设置文字为下标样式。
— <s>...</s>样式标记、<strike>...</strike>样式标记:将文字加入删除线。
(2).接下来附上一个样例,代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>文字样式标记应用</title> </head> <body> <b>粗体字样式</b> <strong>粗体字样式</strong><p> <i>斜体样式</i> <em>斜体样式</em><p> <u>下划线样式</u> x<sup>2</sup> log<sub>10</sub>100<p> <s>删除线样式</s> <strike>删除线样式</strike> </body> </html>
执行后。效果例如以下:
2.段落标记:为了使网页中的文字更有条理地显示出来,能够使用HTML文档中的段落标记和换行标记来使文字段落更加分明规范。
以下对段落标记和换行标记进行介绍:
2.1.段落标记<p>:
(1).在普通的文本编辑器中。每输入完一段文字后。能够使用回车键生成一个新的段落,在HTML文档中能够使用段落标记<p>来实现。段落标记能够没有结束标记</p>。
(2).也能够採用除<p>以外的其它段落标记,以达到不同级别格式的效果。其它段落标记例如以下:
— <addess>段落标记:用于地址和联系信息,通常显示为斜体字。
— <blockquote>段落标记:用于表示引用文本,通常两边缩排,行间距比普通段落较小。
— <pre>段落标记:用于排版程序代码之类的信息,通经常使用定宽字体,字间和行间有足够的间隔。
在以上段落中也能够使用对其属性align。
(3).接下来附上段落标记的样例,代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>应用几种段落标记</title> </head> <body> <h2 align="center">Java语言</h2> <p align="center">Java程序设计,Hello类</p> <pre> public class Hello{ public static void main(String[] args){ System.out.println("Hello World"); } } </pre> <blockquote>走自己的路。让别人说去吧。</blockquote> <address> 地址:广东省东莞市某学校 </address> </body> </html>
执行效果例如以下:
2.2.换行标记<br>:
(1).在页面中一行文字达到一定长度浏览器会自己主动换行,假设文字未达到一定长度能够使用换行标记<br>对其强制换行。换行标记能够没有结束标记</br>。
当中也能够用<br/>标记。和<br>是一样的。
(2).接下来附上一个样例,代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>换行标记</title> </head> <body> 走自己的路。让别人说去吧。<br>走别人的路,让别人无处可走! <br/>让暴风雨来得更猛烈些吧。 </body> </html>
3.列表标记:列表是比較经常使用的数据排列形式,对照较复杂的数据通过使用列表。能够使数据变得更加清晰。
以下介绍在网页中的两种列表标记,无序列表标记和有序列表标记。
3.1.无序列表标记<ul>...</ul>:
(1).无序列表标记用于提供一中不须要编号的列表形式。
在每一项目文字前,以符号作为每项的表示。
其语法格式例如以下:
<ul> <li>第一项 <li>第二项 <li>第三项 ...... </ul>
当中<ul></ul>标记表示一个无序列表的開始标记和结束标记。<li>表示一个项目的開始。<ul>标记经常使用属性为type。此属性表示无序列表的项目符号样式。其属性值例如以下:
— disc:实心圆点。为无序列表标记的默认值。
— circle:空心圆点。
— square:实心正方形块。
(2).接下来附上样例,代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无序列表标记的样例</title> </head> <body> <h3>学校课程</h3> <ul> <li>C语言程序设计</li> <li>Java程序设计</li> </ul> <h3>编程语言</h3> <ul type="square"> <li>C语言</li> <li>Java语言</li> <li>HTML超文本标记语言</li> <li>JavaScript脚本语言</li> </ul> <h3>图书种类</h3> <ul type="circle"> <li>计算机类</li> <li>教材类</li> <li>杂志类</li> <li>文学类</li> </ul> </body> </html>
执行效果例如以下:
3.2.有序列表标记<ol>...</ol>:
(1).有序列表标记将各个列表项使用编号而不是用符号来表示。在有序列表中的项目通常都是有先后顺序的,一般採用的是以数字或字母为顺序号。其语法格式例如以下:
<ol> <li>第一项 <li>第二项 <li>第三项 ...... </ol>
当中<ol></ol>标记表示一个有序列表的開始标记和结束标记。<li>表示一个项目的開始。
<ol>标记经常使用start属性和type属性。start属性用来设置列表项的起始值。其属性值为整数。当然也能够输入负整数,但仅仅对数字项起作用,默认从1開始。
type属性用来设置列表项的序号样式,其属性值例如以下:
— 1:数字1、2、3...
— a:小写英文字母a、b、c...
— A:大写英文字母A、B、C...
— i:小写罗马数字i、ii、iii...
— I:大写罗马数字I、II、III...
(2).接下来附上一个样例,代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>有序列表标记样例</title> </head> <body> <ol start="1" type="a"> <li>计算机类</li> <li>教材类</li> <li>杂志类</li> <li>文学类</li> </ol> </body> </html>
执行效果例如以下:
把上述主体部分代码改为例如以下:
<body> <ol start="2" type="1"> <li>计算机类</li> <li>教材类</li> <li>杂志类</li> <li>文学类</li> </ol> </body>
执行后例如以下:
4.超链接标记:
4.1.在HTML文档中<a>...</a>被称为超链接标记,此标记是网页页面中最重要的元素之中的一个。一个站点是由多个页面组成的,页面之间依据超链接确定相互的导航关系。
单击网页上的链接文字或者图像后,就能够跳转到还有一个网页。
(1).超链接标记经常使用的属性以及说明为:
— href属性:指定链接路径,当设置为“#”时表示一个空链接。
— name属性:链接的名称。经常使用于书签链接。
— title属性:链接的提示文字。
— target属性:指定链接的目标窗体打开方式,共同拥有4个属性值,_parent表示在上一级窗体中打开,一般使用框架页时常常使用、_blank表示在新窗体中打开、_new表示在新窗体中打开、_self表示在同一窗体中打开、_top表示在浏览器的整个窗体中打开。忽略不论什么框架。
— accesskey属性:超链接热键。
(2).直接新建一个html文件,主要代码例如以下:
<a href="kind.html" target="_blank">hh</a>
然后自己尝试target属性值的变化,看下差别。
5.图像标记:
5.1. 假设希望网页达到美观吸引浏览者的效果,使用图片是必不可少的。在HTML文档中能够使用<img>图像标记将图片插入到网页中,也能够使用<img/>图像标记。
(1).以下来介绍一下图像标记经常使用的属性及说明:
— src属性:此属性用来设置图像文件所在的路径。此路径能够是相对路径也能够是绝对路径。
— height属性:此属性用来设置图像的高度,单位是像素(设置图像高度其宽度会等比例进行调整),也能够是浏览器的百分比数。
— width属性:此属性用来设置图像的宽度,单位是像素,也能够是浏览器的百分比数。
— border属性:此属性用来设置图像边框的宽度,单位为像素,默觉得无边框。
— hspace属性:此属性用来设置两个图像之间的水平间距。单位是像素。
— vspace属性:此属性用来设置两个图像之间的垂直间距,单位是像素。
— align属性:此属性用来设置图像的对齐方式。
— alt属性:此属性用来设置提示文字,当浏览器没有载入上图像或载入图像后鼠标悬停在图片上方时,将显示出提示文字。
(2).接下来附上一个样例,在网页上插入一张图片logo1.jpg。此张图片放在网站里的images目录下。并将宽度高度属性设置为100%,将提示文字设置为“星光灿烂”。代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>在网页上插入一张图片</title> </head> <body> <img src="images/logo1.jpg" width="100%" height="100%" align="left" alt="爱着你的心"> </body> </html>
自己试下吧!
6.表格标记:
6.1.在HTML文档中通常使用三个标记来构成表格,分别为表格标记、行标记和单元格标记。
创建一个表格的语法格式例如以下:
<table> <caption>表格标题内容</caption> <tr> <th>表头内容</th> <th>表头内容</th> … </tr> <tr> <td>单元格内容</td> <td>单元格内容</td> ...... </tr> <table>
(1).表格标记<table>...</table>:
— <table>标记表示一个表格的開始位置,</table>表示一个表格的结束位置。表格标记的经常使用属性及说明为:
width属性:设置表格的宽度,默认表格的宽度与表格内文字的宽度相关,其属性值能够是像素,也能够是浏览器的百分比数。
height属性:设置表格的高度。其设置方法与设置表格的宽度同样。
align属性:设置表格在网页中的位置。
border属性:设置表格边框的宽度。单位为像素。须要注意的是仅仅有设置其属性大于0时才干够显示出表格的宽度。
bordercolor属性:设置表格边框的颜色,但前提是必须保证表格边框值大于0。
cellspace属性:设置表格内框的宽度,表格内框的宽度指的是单元格与单元格之间的宽度。
cellpadding属性:设置表格内文字与边框的距离。
bgcolor属性:设置表格的背景颜色。
background:设置表格的背景图像。
(2).表格标题标记<caption>...</caption>:
— <caption>...</caption>标记用来设置一种比較特殊的单元格”标题单元格“。
标题单元格位于整个表格的第一行位置,起到为表格显示标题的作用。
(3).表格表头标记<th>...</th>:
— 在表格中另一种特殊的单元格,此单元格为”表头“。表格的表头一般位于第一行的第一列位置。用来说明这一行内容的类别。表头中的内容是加粗显示的。
(4)行标记<tr>...</tr>:
— 行标记用来设置表格中的行,在表格中包括几组行标记,就表示此表格为几行。行标记经常使用的属性及说明例如以下:
width属性:设置行的宽度,此属性仅仅对设置的当前行有效。
height属性:设置行的高度。
bordercolor属性:设置该行的边框颜色。
bgcolor属性:设置该行的背景颜色。
background属性:设置该行的背景图像。
align属性:设置该行文字的水平对齐方式。
valign属性:设置该行的垂直对齐方式。
(5).单元格标记<td>...</td>:
— 单元格标记用来表示每一行中有几个单元格。
此标记的部分属性和行标记类似,这里将介绍colspan属性和rowspan属性。
colspan属性:在表格中有时须要将一行中的几行单元格合并成为一个单元格,此时能够使用colspan属性来实现。此属性值为正整数表示须要合并单元格的个数。
rowspan属性:此属性用来合并表格的行。此属性值为正整数表示须要合并行的个数。
(6).接下来附上一个样例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>表格标记的样例</title> </head> <body> <!-- 表格宽度为418,边框宽为2。居中对齐,单元格间距为10,边距6,背景颜色为#3399FF,亮边框色为#CC 6600--> <table width="418" border="2" align="center" cellspacing="6" cellpadding="10" bordercolor="#3399FF" bordercolorlight="#CC6600"> <tr> <th height="35" colspan="3" scope="col">Java程序设计</th> </tr> <tr> <td width="20%" rowspan="3"><img src="images/logo1.jpg" width="84" height="114"/></td> <td width="30%" height="25" valign="middle" bgcolor="#D8E1F8">面向对象的三大特性:</td> <td width="46%" height="25" valign="middle">继承、封装、多态</td> </tr> <tr> <td height="25" valign="middle" bgcolor="#D8E1F8">Java书籍:</td> <td height="25" valign="middle">疯狂Java讲义</td> </tr> <tr> <td height="25" valign="middle" bgcolor="#D8E1F8">Java电子书:</td> <td height="25" valign="middle">21天学通Java</td> </tr> <tr> <td height="25" colspan="3" align="center">学习论坛:CSDN论坛</td> </tr> </table> </body> </html>
执行后效果例如以下:
7.框架标记:框架的作用是把浏览器窗体划分成若干个区域,每一个区域内能够显示不同的页面,而且各个页面之间不会受到不论什么影响。
为框架内每一个页面取不同的名字。作为彼此互动的根据,所以框架技术普遍应用于页面导航。
7.1.基本框架:创建框架的语法格式例如以下:
<html> <head> <title>框架页面的标题</tilte> </head> <frameset> <frame> <frame> ...... </frameset> </html>
(1).从创建框架的语法能够看出,框架主要是由两个标记组成的。一个是框架容器标记。还有一个是框架页面标记。
以下对这两个标记分别进行介绍:
— <frameset>:框架容器标记,用作框架的声明。<frameset>为框架開始标记。相应的</frameset>为框架结束标记。在框架网页中,将<frameset>标记置于头部标记之后,以代替<body>的位置。框架容器标记经常使用的属性及说明例如以下:
rows属性:水平切割窗体,其属性值能够取多个值,每一个值表示一个框架窗体的水平宽度,单位为像素也能够是浏览器的百分比数,须要注意的是,设置了几个row属性值。就要有几个框架页面标记。
cols属性:垂直切割窗体。其使用方法和rows类似。
frameborder属性:是否显示框架边框,其属性值仅仅能为0或1,假设为0。边框将会隐藏。1为显示。
framespacing属性:设置边框宽度。像素默觉得1。
bordercolor属性:设置边框颜色。
— <frame>:框架页面标记,定义框架内容。在框架页面中有几个框架,就设置几个<frame>标记,它包括于<frame>和</frame>之间。框架页面标记经常使用的属性及说明例如以下:
src属性:设置框架页面文件的路径。如未设置仅仅显示空白页面。
name属性:设置页面名称便于查找和链接。页面名称不同意包括特殊字符。
noresize属性:禁止改变框架的尺寸。
marginwidth属性:设置页面左右边缘与框架边框的距离。
scrolling属性:是否显示框架滚动栏,取值为yes/no/auto,默觉得auto。即依据窗体内容决定是否显示滚动栏。
(2).接下来附上一个样例,通过<frameset>标记和<frame>标记定义一个顶部和嵌套的左側框架。代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>构建基本框架</title> </head> <frameset rows="80,*" cols="*" frameborder="no" border="0" framespacing="0"> <frame src="br.html" name="topFrame" scrolling="yes" noresize="noresize" id="topFrame"/> <frameset cols="180,*" frameborder="no" border="0" framespacing="0"> <frame src="br1.html" name="leftFrame" scrolling="yes" noresize="noresize" id="leftFrame"/> <frame src="hr.html" name="mainFrame" id="mainFrame"/> </frameset> </frameset> <noframes> <body> 非常抱歉,您使用的浏览器不支持框架功能,请尝试使用其它浏览器! </body> </noframes> </html>
执行效果例如以下:
7.2.浮动框架:浮动框架是一种特殊的框架结构,它是在浏览的窗体中嵌套另外的网页文件。
<iframe>为浮动框架标记。其语法为:
<iframe src="文件" height="数值" width="数值" name="框架名称" scrolling="值" frameborder="值"></iframe>
(1).<iframe>标记经常使用的属性及说明例如以下:
src属性:指定浮动框架的文件路径。
name属性:设定浮动框架的名称。
align属性:设置浮动框架的对齐方式。
width属性:设置浮动框架的宽度。
height属性:设置浮动框架的高度。
scrolling属性:设置浮动框架滚动栏的显示方式,value有三个取值:yes为显示滚动栏。no为不显示滚动栏,auto为依据窗体内容决定是否有滚动栏。
frameborder属性:指定是否显示浮动框架的边框。当中,value值为yes代表显示框架边框,值为no代表隐藏框架边框。
marginwidth属性:设置浮动框架中的左右边缘与边框的距离。
marginheight属性:设置浮动框架中的上下边缘与边框的距离。
(2).接下来附上一个样例。代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>构建浮动框架</title> </head> <body> <iframe src="br.html" name="mainFrame" width="400" height="200" scrolling="auto" align="center" marginheight="50" marginwidth="50"> </iframe> </body> </html>
执行效果例如以下:
8.多媒体标记:
8.1.多媒体是指利用计算机技术。把多种媒体综合在一起,使之建立起逻辑上的联系,并能对其进行各种处理的一种方法。
多种媒体主要包含文字、声音、图像和动画等各种形式。在HTML文件里使用<embed></embed>多媒体标记能够将多媒体文件嵌入到网页中。
(1)多媒体标记经常使用属性及说明例如以下:
— src属性:设置多媒体文件路径。
— width属性:播放多媒体文件区域的宽度。
— height属性:播放多媒体文件区域的高度。
— hidden属性:控制播放面板的显示和隐藏。取值为true代表隐藏面板,取值为false代表显示面板。
— autostart属性:控制多媒体内容是否自己主动播放,取值为true代表自己主动播放,取值为false代表不自己主动播放。
— loop属性:控制多媒体内容是否循环播放,取值为true代表无限次循环播放,取值为false代表仅播放一次。
(2).接下来附上一个样例,当中index.swf放在网站下的falsh目录下。代码例如以下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>多媒体标记的应用</title> </head> <body> 以下是一个多媒体文件 <embed loop="true" width="280" height="200" src="falsh/index.swf"></embed> </body> </html>
执行效果例如以下:
(3).此标记能够播放mp4、mkv等视频文件,也能够播放mp3音乐文件,以及一些动画效果文件。
二.当中我把关于HTM文档的所有内容都压缩打包了,下载地址:http://download.csdn.net/detail/u012561176/8916217 ,包含这篇文章的源码这篇文章的word文档。以便大家学习,关于HTML文档的基础知识可看我上篇文章:http://blog.csdn.net/u012561176/article/details/46947575
以上内容仅供大家学习參考,写得不好,请见谅,如有错误,请指出,谢谢!
??
??
??
??