DIV CSS网页布局实例.docx

上传人:b****8 文档编号:10326431 上传时间:2023-02-10 格式:DOCX 页数:35 大小:219.91KB
下载 相关 举报
DIV CSS网页布局实例.docx_第1页
第1页 / 共35页
DIV CSS网页布局实例.docx_第2页
第2页 / 共35页
DIV CSS网页布局实例.docx_第3页
第3页 / 共35页
DIV CSS网页布局实例.docx_第4页
第4页 / 共35页
DIV CSS网页布局实例.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

DIV CSS网页布局实例.docx

《DIV CSS网页布局实例.docx》由会员分享,可在线阅读,更多相关《DIV CSS网页布局实例.docx(35页珍藏版)》请在冰豆网上搜索。

DIV CSS网页布局实例.docx

DIVCSS网页布局实例网页布局实例DIVCSS网页布局实例:

十步学会用CSS建站http:

/更新日期:

2007-06-2020:

55出处:

jorux的网站作者:

jorux收藏本文Update:

本篇已得到原作者SteveDennis的翻译准予,在此Jorux表示感谢!

本教程主要参考CreatingaCSSLayoutfromscratch,由Jorux翻译,以意译为主,其间加入了不少Jorux的个人观点,省略了一些多余的说明,请读者明鉴。

目录:

第一步:

规划网站,本教程将以图示为例构建网站;第二步:

创建html模板及文件目录等;第三步:

将网站分为五个div,网页基本布局的基础;第四步:

网页布局与div浮动等;第五步:

网页主要框架之外的附加结构的布局与表现;第六步:

页面内的基本文本的样式(css)设置;第七步:

网站头部图标与logo部分的设计;第八步:

页脚信息(版权等)的表现设置;第九步:

导航条的制作(较难);第十步:

解决ie浏览器的显示bug;第一步:

规划网站,本教程将以图示为例构建网站1.规划网站,本教程将以下图为例构建网站。

其基本布局见下图:

主要由五个部分构成:

1.MainNavigation导航条,具有按钮特效。

Width:

760pxHeight:

50px2.Header网站头部图标,包含网站的logo和站名。

Width:

760pxHeight:

150px3.Content网站的主要内容。

Width:

480pxHeight:

Changesdependingoncontent4.Sidebar边框,一些附加信息。

Width:

280pxHeight:

Changesdependingon5.Footer网站底栏,包含版权信息等。

Width:

760pxHeight:

66px第二步:

创建html模板及文件目录等1.创建html模板。

代码如下:

CompanyName-PageNameimportcss/master.css;CompanyName-PageNameimportcss/master.css;将其保存为index.html,并创建文件夹css,images,网站结构如下:

2.创建网站的大框,即建立一个宽760px的盒子,它将包含网站的所有元素。

在html文件的和之间写入Helloworld.Helloworld.创建css文件,命名为master.css,保存在/css/文件夹下。

写入:

#page-containerwidth:

760px;background:

red;#page-containerwidth:

760px;background:

red;控制html的id为page-container的盒子的宽为760px,背景为红色。

表现如下:

现在为了让盒子居中,写入margin:

auto;,使css文件为:

#page-containerwidth:

760px;margin:

auto;background:

red;#page-containerwidth:

760px;margin:

auto;background:

red;现在你可以看到盒子和浏览器的顶端有8px宽的空隙。

这是由于浏览器的默认的填充和边界造成的。

消除这个空隙,就需要在css文件中写入:

html,bodymargin:

0;padding:

0;html,bodymargin:

0;padding:

0;第三步:

将网站分为五个div,网页基本布局的基础:

1.将“第一步”提到的五个部分都放入盒子中,在html文件中写入:

MainNavHeaderSidebarAContentFooterMainNavHeaderSidebarAContentFooter表现如下:

2.为了将五个部分区分开来,我们将这五个部分用不同的背景颜色标示出来,在css文件写入:

#main-navbackground:

red;height:

50px;#headerbackground:

blue;height:

150px;#sidebar-abackground:

darkgreen;#contentbackground:

green;#footerbackground:

orange;height:

66px;#main-navbackground:

red;height:

50px;#headerbackground:

blue;height:

150px;#sidebar-abackground:

darkgreen;#contentbackground:

green;#footerbackground:

orange;height:

66px;表现如下:

第四步:

网页布局与div浮动等:

1.浮动,首先让边框浮动到主要内容的右边。

用css控制浮动:

#sidebar-afloat:

rightright;width:

280px;background:

darkgreen;#sidebar-afloat:

right;width:

280px;background:

darkgreen;表现如下:

2.往主要内容的盒子中写入一些文字。

在html文件中写入:

Loremipsumdolorsitamet,consectetueradipiscingelit.Nullamgravidaenimutrisus.Praesentsapienpurus,ultricesa,variusac,suscipitut,enim.Maecenasinlectus.Donecinsapieninnibhrutrumgravida.Sedutmauris.Fuscemalesuadaenimvitaelacuseuismodvulputate.Nullamrhoncusmaurisacmetus.Maecenasvulputatealiquamodio.Duisscelerisquejustoapede.Namauguelorem,semperat,portaeget,placerateget,purus.Suspendissemattisnuncvestibulumligula.Inhachabitasseplateadictumst.Loremipsumdolorsitamet,consectetueradipiscingelit.Nullamgravidaenimutrisus.Praesentsapienpurus,ultricesa,variusac,suscipitut,enim.Maecenasinlectus.Donecinsapieninnibhrutrumgravida.Sedutmauris.Fuscemalesuadaenimvitaelacuseuismodvulputate.Nullamrhoncusmaurisacmetus.Maecenasvulputatealiquamodio.Duisscelerisquejustoapede.Namauguelorem,semperat,portaeget,placerateget,purus.Suspendissemattisnuncvestibulumligula.Inhachabitasseplateadictumst.表现如下:

但是你可以看到主要内容的盒子占据了整个page-container的宽度,我们需要将#content的右边界设为280px。

以使其不和边框发生冲突。

css代码如下:

#contentmargin-right:

280px;background:

green;#contentmargin-right:

280px;background:

green;同时往边框里写入一些文字。

在html文件中写入:

Loremipsumdolorsitamet,consectetueradipiscingelit.Nullamgravidaenimutrisus.Praesentsapienpurus,ultricesa,variusac,suscipitut,enim.Maecenasinlectus.Donecinsapieninnibhrutrumgravida.Sedutmauris.Fuscemalesuadaenimvitaelacuseuismodvulputate.Nullamrhoncusmaurisacmetus.Maecenasvulputatealiquamodio.Duisscelerisquejustoapede.Namauguelorem,semperat,portaeget,placerateget,purus.Suspendissemattisnuncvestibulumligula.Inhachabitasseplateadictumst.Loremipsumdolorsitamet,consectetueradipiscingelit.Nullamgravidaenimutrisus.Praesentsapienpurus,ultricesa,variusac,suscipitut,enim.Maecenasinlectus.Donecinsapieninnibhrutrumgravida.Sedutmauris.Fuscemalesuadaenimvitaelacuseuismodvulputate.Nullamrhoncusmaurisacmetus.Maecenasvulputatealiquamodio.Duisscelerisquejustoapede.Namauguelorem,semperat,portaeget,placerateget,purus.Suspendissemattisnuncvestibulumligula.Inhachabitasseplateadictumst.表现如下:

这也不是我们想要的,网站的底框跑到边框的下边去了。

这是由于我们将边框向右浮动,由于是浮动,所以可以理解为它位于整个盒子之上的另一层。

因此,底框和内容盒子对齐了。

因此我们往css中写入:

#footerclear:

both;background:

orange;height:

66px;#footerclear:

both;background:

orange;height:

66px;表现如下:

第五步:

网页主要框架之外的附加结构的布局与表现:

第五步主要介绍除网页主要框架之外的附加结构的表现(Layout),包括以下内容:

1.主导航条;2.标题(heading),包括网站名和内容标题;3.内容;4.页脚信息,包括版权,认证,副导航条(可选)。

加入这些结构时,为了不破坏原有框架,我们需要在css文件body标签(TAG)下加入:

.hiddendisplay:

none;.hiddendisplay:

none;.hidden即我们加入的类(class),这个类可以使页面上任意属于hidden类的元素(element)不显示。

这些会在稍后使用,现在请暂时忘记它。

现在我们加入标题(heading):

先回到HTML的代码,到是我们常用的html标题代码。

比如我们一般用网站名,网站副标题,内容主标题等。

我们往html文件的Header层(Div)加入:

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

h1margin:

0;padding:

0;h1margin:

0;padding:

0;接下来是导航条:

控制导航条表现的css代码相对比较复杂,我们将在第九步或是第十步中详细介绍。

现在html文件加入导航代码:

AboutServicesPortfolioContactUsAboutServicesPortfolioContactUs(注:

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

AboutServicesPortfolioContactUsAboutServicesPortfolioContactUs我们跳一步,先到页脚:

页脚包括两部分:

左边的版权,认证和右边的副导航条。

我们先要让副导航条向右浮动,就像之前处理Sidebar和Content关系的一样,需要加入一个新的层(div):

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

About-Services-Portfolio-ContactUs-TermsofTradeCopyrightEnlightenDesignsPoweredbyEnlightenHostingandVadmin3.0CMSAbout-Services-Portfolio-ContactUs-TermsofTradeCopyrightEnlightenDesignsPoweredbyEnlightenHostingandVadmin3.0CMS刷新你的页面,你将看到如下所示:

最后我们回到内容部分:

用h2表现内容标题About,Contactus;用表现段落;用断行。

AboutEnlightenDesignsisanInternetsolutionsproviderthatspecialisesinfrontandbackenddevelopment.Toviewsomeofthewebsiteswehavecreatedviewourportfolio.Wearecurrentlyundergoingafacelift,soifyouhaveanyquestionsorwouldlikemoreinformationabouttheservicesweprovidepleasefeelfreetocontactus.ContactUsPhone:

(07)8536060Fax:

(07)8536060Email:

infoenlighten.co.nzP.OBox:

14159,Hamilton,NewZealandMorecontactinformationAboutEnlightenDesignsisanInternetsolutionsproviderthatspecialisesinfrontandbackenddevelopment.Toviewsomeofthewebsiteswehavecreatedviewourportfolio.Wearecurrentlyundergoingafacelift,soifyouhaveanyquestionsorwouldlikemoreinformationabouttheservicesweprovidepleasefeelfreetocontactus.ContactUsPhone:

(07)8536060Fax:

(07)8536060Email:

infoenlighten.co.nzP.OBox:

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

#contenth2margin:

0;padding:

0;#contentpmargin:

0;padding:

0;#contenth2margin:

0;padding:

0;#contentpmargin:

0;padding:

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

第六步:

页面内的基本文本的样式(css)设置:

你是不是厌倦了那些大红大绿的背景,现在是去掉它们的时候了,只保留导航条的红色背景。

真是难为您居然能坚持学习本教程到此,很好,再过几步,你就能很好了解css控制整个网页版面(Layout)的能力。

言归正传先设置全局的文本样式:

bodyfont-family:

Arial,Helvetica,Verdana,Sans-serif;font-size:

12px;color:

#666666;background:

#ffffff;bodyfont-family:

Arial,Helvetica,Verdana,Sans-serif;font-size:

12px;color:

#666666;background:

#ffffff;一般我们把body标签放在css文件的顶端,当然你要是执意要把它放在尾部,浏览器不会和你计较。

font-family内的顺序决定字体显示优先级,比方如果所在计算机没有Arial字体,浏览器就会指向Helvetica字体,依次类推;color指字体颜色;background指背景颜色。

如果你都是按本教程的操作,应该能看到下图:

你可以看到内容(content)的各块(block)之间的间隙太小了,而基于最初的设计,内容标题(即)和正文之间的间隙大概是15px,每个段落的间距也大概是15px,所以在css中写入:

#contenth2margin:

0;padding:

0;padding-bottom:

15px;#contentpmargin:

0;padding:

0;padding-bottom:

15px;#contenth2margin:

0;padding:

0;padding-bottom:

15px;#contentpmargin:

0;padding:

0;padding-bottom:

15px;然后需要让content层的四周都空出25px的间隙,这本来是件很简单的事,理论上我们只需在#content的css文件中加入padding:

25px;就行了,但是IE给我们上了一课,它的固有BUG根本不能按我们的想象表现。

解决这个问题有两种办法。

第一种办法是区别浏览器写入两种代码(HACKIE),但因为间隙(padding,在Dreamweaver中又叫填充)使用很频繁,所以我们用另一种办法。

我们往需要填充的层中加入padding层,它的功能仅限于显示间隙:

Loremipsumdolorsitamet,consectetueradipiscingelit.Nullamgravidaenimutrisus.Praesentsapienpurus,ultricesa,variusac,suscipitut,enim.Maecenasinlectus.Donecinsapieninnibhrutrumgravida.Sedutmauris.Fuscemalesuadaenimvitaelacuseuismodvulputate.Nullamrhoncusmaurisacmetus.Maecenasvulputatealiquamodio.Duisscelerisquejustoapede.Namauguelorem,semperat,portaeget,placerateget,purus.Suspendissemattisnuncvestibulumligula.Inhachabitasseplateadictumst.Loremipsumdolorsitamet,consectetueradipiscingelit.Nullamgravidaenimutrisus.Praesentsapienpurus,ultricesa,variusac,suscipitut,enim.Maecenasinlectus.Donecinsapieninnibhrutrumgravida.Sedutmauris.Fuscemalesuadaenimvitaelacuseuismodvulputate.Nullamrhoncusmaurisacmetus.Maecenasvulputatealiquamodio.Duisscelerisquejustoapede.Namauguelorem,semperat,portaeget,placerateget,purus.Suspendissemattisnuncvestibulumligula.Inhachabitasseplateadictumst.同样的,再往html文件的content层中加入padding层。

由于padding层的功能仅是制造空隙,所以不要设置它的宽度,只需在css中添加:

#sidebar-afloat:

rightright;width:

280px;#sidebar-a.paddingpadding:

25px;#contentmargin-right:

280px;#content.paddingpadding:

25px;#sidebar-afloat:

right;width:

280px;#sidebar-a.paddingpadding:

25px;#contentmargin-right:

280px;#content.paddingpadding:

25px;就像我们之前用的方法一样,我们只选择了类(class)为padding,且父类(parent)为#content或#sidebar-a的元素(element)。

接下来设置行距,content和sidebar-a的行距需要加宽,但在css中是没有行距(leading)这种属性(attribute)的,但是有行高(line-height)属性,因此往css中写入:

#sidebar-afloat:

rightright;width:

280px;line-height:

18px;#contentmargi

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1