» 网友学堂 » HTML/CSS教程 » 十步学会用css建站第五步 -> 查看 2008年04月24日 更新
十步学会用css建站第五步
作者:lonjew 发表时间:2008-4-24 09:27 阅读:62次 在百度搜索相关内容

第五步:网页主要框架之外的附加结构的布局与表现:
第五步主要介绍除网页主要框架之外的附加结构的表现(Layout),包括以下内容:
1.主导航条;
2.标题(heading),包括网站名和内容标题;
3.内容;
4.页脚信息,包括版权,认证,副导航条(可选)。
加入这些结构时,为了不破坏原有框架,我们需要在css文件"body"标签(TAG)下加入:

.hidden {
display: none;
}
".hidden"即我们加入的类(class),这个类可以使页面上任意属于hidden类的元素(element)不显示。这些会在稍后使用,现在请暂时忘记它。
现在我们加入标题(heading):
先回到HTML的代码,到是我们常用的html标题代码。比如我们一般用网站名,网站副标题,内容主标题等。我们往html文件的Header层(Div)加入:


Enlighten Designs

刷新一下页面,你就可以看到巨大的标题,和标题周围的空白,这是因为>标签的默认大小和边距(margin)造成的,先要消除这些空白,需要加入:

h1 {
margin: 0;
padding: 0;
}
接下来是导航条
控制导航条表现的css代码相对比较复杂,我们将在第九步或是第十步中详细介绍。现在html文件加入导航代码:



About
Services
Portfolio
Contact Us


(注:原教程使用了dl和dt,jorux在这使用了更常用的ul和li标签)
目前导航条的表现比较糟糕,但是要在以后的教程中介绍其特殊表现,故需要暂时隐藏导航条,于是加入:



About
Services
Portfolio
Contact Us


我们跳一步,先到页脚:
页脚包括两部分:左边的版权,认证和右边的副导航条。
我们先要让副导航条向右浮动,就像之前处理Sidebar和Content关系的一样,需要加入一个新的层(div):



About -
Services -
Portfolio -
Contact Us -
Terms of Trade


理论上,我们可以控制源文件上的任意元素的浮动,但由于IE浏览器的BUG,被浮动层需要首先出现在源文件上,也就是说我们把副标题放在版权和认证的前面:



About -
Services -
Portfolio -
Contact Us -
Terms of Trade

Copyright © Enlighten Designs
Powered by Enlighten Hosting and
Vadmin 3.0 CMS
刷新你的页面,你将看到如下所示(点击看大图):



最后我们回到内容部分:用表现内容标题–"About","Contact us";用表现段落;用断行。


About
Enlighten Designs is an Internet solutions provider that specialises in
front and back end development. To view some of the web sites we have created view our
portfolio.
We are currently undergoing a 'face lift', so if you have any questions or would
like more information about the services we provide please feel free to contact us.
Contact Us
Phone: (07) 853 6060
Fax: (07) 853 6060
Email: info@enlighten.co.nz
P.O Box: 14159, Hamilton, New Zealand
More contact information…

刷新页面可以看到在Content层中又出现一些空白,这是由于标签的默认边距(margin)造成的,我们必须消除这些恼人的空白,当又不想把网页中所有的标签地边距都设为0,这就需要使用css的子选择器("child css selector"),在html的文件结构中,我们想控制的标签(child)是属于#content层(parent)的,因此在css文件中写入:

#content h2 {
margin: 0;
padding: 0;
}
#content p {
margin: 0;
padding: 0;
}
这样我们就告诉浏览器,仅仅是隶属于content层的标签的margin和padding的值为0!

#Advertisement