HTML 基础汇总实验
实验中的代码可以通过命令下载在实验楼环境中下载运行测试
1
| git clone https://github.com/shiyanlou/finaltest
|
实验总体设计
在开始之前我们对网页应该有大致的把握,也就是说,在开始之前我们就要清楚我们要实现的目标,对应的最基础的框架结构,并且通过使用我们学过的那些标签和属性来实现,对于这个实验。我们可以随便在网上找一个样式简单点的网页来实现,这可能要涉及到一小部分的css样式的内容(毕竟只用HTML很难写出相同的效果)。下面我们就先展示一下我们要完成的效果:
大家可以看出,这个页面实现起来难度应该不大,这里涉及到布局,图片的插入,背景颜色调整,链接实现页面内的跳转,表单实现文本输入和邮件发送,再加上最基础的文本格式,用我们前面讲过的知识,足以对付。
下面,我们就先来用一个结构图将这个页面的结构为大家剖析一下。让大家对这个实验结构有更好的理解:
总体框架及布局
前面的章节中我们讲过两种实现布局的方式,一个是表格元素,一个是div元素,这里我们选择使用div元素来实现。这里涉及到一点css的东西,用了style。但是无关紧要,完全能理解。下面我们就来具体讲解下:
首先我们将整个页面横向分为五个块,整个页面我们先看作一个大的块,其他的块嵌套在其中。我们现在就为他们命名。
整个页面我们看作时一个块,我们将其命名为container,所有的块都嵌套在其中
下面就是标题,命名为header,这是整个页面的头部,一个标题加一个本页面链接,没什么多说的
下一个是我们第一个大的部分,占了第一篇页面的额绝大多部分,有一张工程师的插图,命名为paragraph。
接下来有四张插图的部分,我们将其算为一个大的块(其实有四个块,水平并列,每一个块插一张图)这四个小块分别命名为leftside、middle1、middle2、rightside。
再下来就是表单发送邮件的块,主要实现文本输入和邮件发送,将其命名为footer1.
最后就是一个美化的底边框,将其命名为footer2。
下面就是具体的代码,在这个style中,顺便设置了一些对这个块的总体设置(所占宽度,高度,对齐等):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| <style> #container { width: 1300px; margin: 0 auto; /* 使 #container 居中 */ } #header { background-color: darkslategray; height: 130px; font-size: 16px; } #paragraph { background-color: lightseagreen; height: 550px; text-align: center; font-size: 30px; } #leftside { height: 350px; width:310px; float: left; } #middle1 { height: 350px; width: 340px; float: left; } #middle2 { height: 350px; width: 340px; float: left; } #rightside { height: 350px; width: 310px; float: left; } #leftside img, #middle1 img, #middle2 img, #rightside img { width: 100%; } #footer1 { background-color: powderblue; height: 600px; clear: both; text-align:center; } #footer2 { background-color: lightslategrey; height: 100px; clear: both; text-align:center; } </style>
|
具体模块实现
上面介绍了总体的模块,这里我们就具体来看看如何实现每一块的实现:
header:
1 2 3 4 5 6
| <div id="header" > <br/> <h1 style="color: aliceblue;text-align: center">Colorful Shi yan Lou</h1> <a href="#con" style="float: left;color: lightgray">Contact us</a> </div>
|
这是头块的具体内容,设置了字体颜色对其方式,还加入了一个页面间跳转的链接,链接的另一半在后面的footer1中,点击这里以后,页面会跳转到footer1。
1 2 3 4 5 6 7 8 9 10 11
| paragraph:
<div id="paragraph"> <br/> <p> <img src="profile.png"> <br/> <h1 style="color: aliceblue">we are engineers</h1> <p style="color: aliceblue">we are young</p> </p> </div>
|
这个paragraph块插入了一张图,定义了字体颜色,而且在前面的总体声明中可以看出,还设置了这个模块的字体对齐方式及字体大小。
中间模块:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <div id="leftside" align="center"> <h1 style="color: lightslategray">Working</h1> <img src="cabin.png" height="260" width="300"> </div>
<div id="middle1" align="center"> <h1 style="color: lightslategray">Eating</h1> <img src="cake.png" height="260" width="300"> </div>
<div id="middle2" align="center"> <h1 style="color: lightslategray">Playing</h1> <img src="game.png" height="260" width="300"> </div>
<div id="rightside" align="center"> <h1 style="color: lightslategray">Sleeping</h1> <img src="circus.png" height="260" width="300"> </div>
|
这四个块就一起讲了,这里要实现的就是在每个块中插入图片,在图片上面有字体描述,由于定义的每个块的宽度是大于图片的大小,所以才能产生图片与图片之间白色边框的效果,不然,会挤在一起。要想实现几个块水平并列的放置,还可以采用列表的形式。这里我们就只是简单的通过定义大小来实现水平排列,这就是我们实现的效果
这些都是很简单的实现方式,很容易理解,接下来我着重讲讲footer1块(表单实现文本输入和邮件发送)
添加表单实现文本输入和邮件发送
以前我们讲到过使用< a>标签实现邮件发送,就是在标签中加入mailto属性,其实表单实现邮件发送也是很相似的在form标签中action加入mailto。这里还有要注意的就是,表单输入到类型以前讲的很清楚,要是大家有疑惑可以回头看看。下面时具体的代码内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| <div id="footer1" >
<br/> <a name="con"> <h1 style="color: lightslategray;">let's learn with us <br/>good good study, day day up </h1> </a>
<div style="background-color: powderblue;width:450px;height: 400px;float: left"> </div> <div style="background-color: orange;width: 400px;height: 400px;float:left"> <img src="user.png" style="text-align: center"> <br /><br /> <form action="MAILTO:support@shiyanlou.com" method="post" enctype="text/plain">
<h3>Send emali to shiyanlou</h3> your name:<br/> <input type="text" name="name" value="yourname" size="20"> <br /> your email:<br/> <input type="text" name="mail" value="yourmailaddress" size="20"> <br /> what you wanna say:<br/> <input type="text" name="comment" value="yourcomment" size="20"> <br /><br /> <input type="submit" value="send"> <input type="reset" value="rewrite">
</form> </div>
</div>
|
在上面这个模块中,首先开头的就是链接的跳转地址,触发地是在header里面定义的。接下来我们为了使发送表单的块居中,采用了最原始的方法,就是再前面加上一个与背景颜色一样的空块,使他们并列。再后面就是表单的应用,定义表单,并规定长度,实现文本和密码的输入。最后加上两个按钮,实现确认和重置。所有的写法都很基础,没有涉及到更高深的东西。
这就是footer模块的具体样子