在学习完了基本的HTML+CSS标签之后,就可以考试测验写一些大略的静态网页啦~练习的过程是充满造诣感的,值得反复体会和思考!

网页构造

大略提一下常用于表示网页机构的标签:

html静态网页设计初学者HTMLCSS静态网页开辟网页结构 Java
(图片来自网络侵删)

header 全体页面的标题(也可表示一个内容区块)

main 页面主体部分

footer 全体页面的脚注(也可表示一个内容区块)

article 一块与高下文无关的独立内容

section 表示一个内容区块,常嵌套于article中

aside 在article之外与其内容干系的赞助信息

nav 页面中的导航栏

figure 表示一段独立的流内容

基本网站构造

三栏布局

一个网页最少由header、main、footer三部分组成,那么从三栏布局开始练习吧。
无论是上-中-下构造还是左-中-右构造,关键都在于设置中间部分的宽高或位置。
我们知道网页的主体内容(版心)是处于居中位置、随网页缩放而缩放的。
那么旁边(或高下)两栏固定后,须使中间部分自适应。
以下总结了几种三栏布局的方法,以左-中-右构造为例:

先写左中右三个盒子

body部分

1.利用float

利用float使旁边分开文档流

须要把稳的是,利用float方法须要在body部分改一下center盒子的位置,把center盒子放在right盒子之后(否则right盒子会跑到下一行右侧)。
以上代码中,设置center盒子的旁边外边距来实现宽度自适应,若父盒子layout无高度哀求,可用min-height实现高度自适应。
不加高度自适应也可,在未设置center盒子高度的情形下本身高度会随文本内容的扩充而自动增加。

2.利用position

利用绝对定位分开文档流

三个盒子都分别利用绝对定位,left、right分别间隔窗口旁边端为0,center间隔窗口左真个间距为left盒子的宽度,间隔窗口右真个间距为right盒子的宽度。

3.利用flex

利用弹性盒固有属性

须给父盒子layout加上弹性盒属性,给center盒子设置大于0的flex值,利用弹性盒自动拉伸效果实现center盒子的宽度自适应。

4.利用table

设置为表格

给父盒子layout设置为table,宽度为全体窗口,给三个子盒子都设置为table-cell,此时三个盒子就有了表格的属性。
固定left、right盒子的宽度,center盒子自动占满父盒子剩余宽度。
须要把稳的是,由于父盒子具有表格属性,当left、center、right三者中任意一个盒子高度改变时,其他两个盒子会随着改变。

5.利用grid

设置为网格

将父盒子layout设置为grid,宽度为全体窗口,用template-rows设置行高,用template-columns分别设置三个盒子的宽度,个中auto实现center盒子的宽度自适应。
须要把稳的是,这里用template-rows设置了固定的行高,因此center的高度不会自适应。

仿写练习

适宜初学者练习的网页有很多,可以打开网址之家去里面挑一挑,以静态页面为主的网站。
作者自己因此豆瓣首页(局部)进行练习的。
练习过程中,千万不要去看网站源码(此时你也有很多地方看不懂),先试着自己剖析和思考,用所学的知识看看能做到哪一步。

笔者学习时的仿写

放上比拟图,还是有很多不一样的地方,网页也没有功能,作为初学者这都是正常的。
静态网页练习的紧张目的是熟习HTML+CSS布局,培养做网页的思维。
详细细节随着学习的深入,可以让网页更还原、页面更精美,网页功能也能逐步完善起来,实现真正的网站开拓。