3.3DIV+CSS.ppt

上传人:s****8 文档编号:69354033 上传时间:2023-01-02 格式:PPT 页数:33 大小:438.50KB
返回 下载 相关 举报
3.3DIV+CSS.ppt_第1页
第1页 / 共33页
3.3DIV+CSS.ppt_第2页
第2页 / 共33页
点击查看更多>>
资源描述

《3.3DIV+CSS.ppt》由会员分享,可在线阅读,更多相关《3.3DIV+CSS.ppt(33页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、DIV+CSS入门入门内容提要内容提要一、页面布局与规划一、页面布局与规划在网页制作中,有许多的术语,例如:在网页制作中,有许多的术语,例如:CSS、HTML、DHTML、XHTML等等。我们将会用到一些有关于等等。我们将会用到一些有关于HTML的的基本知识,使用基本知识,使用DIV+CSS进行网页布局设计。进行网页布局设计。所有的设计第一步就是构思,构思好了,一般来说还需所有的设计第一步就是构思,构思好了,一般来说还需要用要用PhotoShop或或FireWorks(以下简称以下简称PS或或FW)等图片处等图片处理软件将需要制作的界面布局简单的构画出来,以下是构思理软件将需要制作的界面布局简

2、单的构画出来,以下是构思好的界面布局图。好的界面布局图。内容提要内容提要内容提要内容提要下面,我们需要根据构思图来规划一下页面的布局,仔细分析一下该下面,我们需要根据构思图来规划一下页面的布局,仔细分析一下该图,我们不难发现,图片大致分为以下几个部分:图,我们不难发现,图片大致分为以下几个部分:1、顶部部分,其中又包括了、顶部部分,其中又包括了LOGO、MENU和一幅和一幅Banner图片;图片;2、内容部分又可分为侧边栏、主体内容;、内容部分又可分为侧边栏、主体内容;3、底部,包括一些版权信息。、底部,包括一些版权信息。有了以上的分析,我们就可以很容易的布局了,我们设计层如下图:有了以上的分

3、析,我们就可以很容易的布局了,我们设计层如下图:内容提要内容提要内容提要内容提要根据上图,画了一个实际的页面布局图,说明一下层的嵌套根据上图,画了一个实际的页面布局图,说明一下层的嵌套关系,这样理解起来就会更简单了关系,这样理解起来就会更简单了内容提要内容提要DIV结构如下:结构如下:body/*这是一个这是一个HTML元素,具体我就不说明了元素,具体我就不说明了*/#Container/*页面层容器页面层容器*/#Header/*页面头部页面头部*/#PageBody/*页面主体页面主体*/#Sidebar/*侧边栏侧边栏*/#MainBody/*主体内容主体内容*/#Footer/*页面底

4、部页面底部*/至此至此,页面布局与规划已经完成,页面布局与规划已经完成,接下来我们要做的就是开始书写接下来我们要做的就是开始书写HTML代码和代码和CSS。内容提要内容提要二、写入整体层结构与二、写入整体层结构与CSS程序代码程序代码无标题文档无标题文档这是这是XHTML的基本结构,将其命名为的基本结构,将其命名为index.htm,另一个记事本文档则命名为,另一个记事本文档则命名为css.css。内容提要内容提要DIV的基本结构的基本结构程序代码程序代码为了使以后阅读代码更简易,我们应该添加相关注释为了使以后阅读代码更简易,我们应该添加相关注释.内容提要内容提要Css文件文件程序代码程序代码

5、/*基本信息基本信息*/bodyfont:12pxTahoma;margin:0px;text-align:center;background:#FFF;/*页面层容器页面层容器*/#containerwidth:100%/*页面头部页面头部*/#Headerwidth:800px;margin:0auto;height:100px;background:#FFCC99/*页面主体页面主体*/#PageBodywidth:800px;margin:0auto;height:400px;background:#CCFF00/*页面底部页面底部*/#Footerwidth:800px;margin

6、:0auto;height:50px;background:#00FFFF内容提要内容提要关于以上关于以上CSS的说明的说明1、请养成良好的注释习惯,这是非常重要的;、请养成良好的注释习惯,这是非常重要的;2、body是一个是一个HTML元素,页面中所有的内容都应该写元素,页面中所有的内容都应该写在这标签对之内,我就不多说了;在这标签对之内,我就不多说了;3、讲解一些常用的、讲解一些常用的CSS代码的含义:代码的含义:font:12pxTahoma;这里使用了缩写,完整的代码应该是:这里使用了缩写,完整的代码应该是:font-size:12px;font-family:Tahoma;说明字体为

7、;说明字体为12像素大小,像素大小,字体为字体为Tahoma格式;格式;内容提要内容提要margin:0px;也使用了缩写,完整的应该是:也使用了缩写,完整的应该是:margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0px或或margin:0px 0px 0px 0px,顺序是顺序是上上/右右/下下/左,你也可以书写为左,你也可以书写为margin:0(缩写缩写);以上样式说明;以上样式说明body部分对上右下左边距为部分对上右下左边距为0像素,如果使用像素,如果使用auto则是自动调整边距,则是自动调整边距,另外还有以

8、下几种写法:另外还有以下几种写法:margin:0px auto;说明上下边距为说明上下边距为0px,左右为自动调整;,左右为自动调整;我们以后将使用到的我们以后将使用到的padding属性和属性和margin有许多相似之处,他们的参数有许多相似之处,他们的参数是一样的,只不过各自表示的含义不相同,是一样的,只不过各自表示的含义不相同,margin是外部距离,而是外部距离,而padding则则是内部距离。是内部距离。内容提要内容提要text-align:center文字对齐方式,可以设置为左、右、中,这里我将它设置为居中对齐。文字对齐方式,可以设置为左、右、中,这里我将它设置为居中对齐。bac

9、kground:#FFF设置背景色为白色,这里颜色使用了缩写,完整的应该是设置背景色为白色,这里颜色使用了缩写,完整的应该是background:#FFFFFF。background可以用来给指定的层填充背景色、背景图片,以后我们将用到如下可以用来给指定的层填充背景色、背景图片,以后我们将用到如下格式:格式:background:#ccc url(bg.gif)top left no-repeat;表示:使用表示:使用#CCC(灰度色灰度色)填充整个层,使用填充整个层,使用bg.gif做为背景图片,做为背景图片,top left表示图片位于当前层的左上端,表示图片位于当前层的左上端,no-re

10、peat表示仅显示图片大小而不填充满整个层。表示仅显示图片大小而不填充满整个层。内容提要内容提要top/right/left/bottom/center用于定位背景图片,分别表示用于定位背景图片,分别表示上上/右右/下下/左左/中;还可以使用中;还可以使用background:url(bg.gif)20px 100px;表示表示X座标为座标为20像素,像素,Y座标为座标为100像素的精确定位;像素的精确定位;repeat/no-repeat/repeat-x/repeat-y分别表示分别表示填充满整个层填充满整个层/不填充不填充/沿沿X轴填充轴填充/沿沿Y轴填充。轴填充。height/widt

11、h/color分别表示高度分别表示高度(px)、宽度、宽度(px)、字体颜色、字体颜色(HTML色系表色系表)。内容提要内容提要将代码保存后可以看到,整个页面是居中显示的,那么将代码保存后可以看到,整个页面是居中显示的,那么究竟是什么原因使得页面居中显示呢?究竟是什么原因使得页面居中显示呢?是因为我们在是因为我们在#container中使用了以下属性:中使用了以下属性:margin:0 auto;按照前面的说明,可以知道,表示上下边距为按照前面的说明,可以知道,表示上下边距为0,左右,左右为自动,因此该层就会自动居中了。为自动,因此该层就会自动居中了。如果要让页面居左,则取消掉如果要让页面居左

12、,则取消掉auto值就可以了,因为默值就可以了,因为默认就是居左显示的。认就是居左显示的。通过通过margin:auto我们就可以轻易地使层自动居中了。我们就可以轻易地使层自动居中了。内容提要内容提要三、页面顶部制作三、页面顶部制作我们把我们把css.css中的样式全部清除掉,重新写入以下样式代码:中的样式全部清除掉,重新写入以下样式代码:程序代码程序代码/*基本信息基本信息*/bodyfont:12pxTahoma;margin:0px;text-align:center;background:#FFF;a:link,a:visitedfont-size:12px;text-decorati

13、on:none;a:hover/*页面层容器页面层容器*/#containerwidth:800px;margin:10pxauto内容提要内容提要样式说明:样式说明:a:link,a:visited font-size:12px;text-decoration:none;a:hover 这两项分别是控制页面中超链接的样式,具体我就不说明了,请大这两项分别是控制页面中超链接的样式,具体我就不说明了,请大家参阅手册。家参阅手册。#container width:800px;margin:10px auto指定整个页面的显示区域。指定整个页面的显示区域。width:800px指定宽度为指定宽度为8

14、00像素,这里根据实际所需设定。像素,这里根据实际所需设定。margin:10px auto,则是页面上、下边距为,则是页面上、下边距为10个像素,并且居中显个像素,并且居中显示。示。我们讲过,对层的我们讲过,对层的margin属性的左右边距设置为属性的左右边距设置为auto可以让层居中可以让层居中显示。显示。内容提要内容提要我们开始制作我们开始制作TOP部分,部分,TOP部分包括了部分包括了LOGO、菜单和、菜单和Banner,首,首先我们要做的就是对设计好的图片进行切片,先我们要做的就是对设计好的图片进行切片,TOP部分切片为两部分,部分切片为两部分,第一部分包括了第一部分包括了LOGO和

15、一条横线。由于和一条横线。由于LOGO图片并没有太多的颜色,图片并没有太多的颜色,这里我于是将这一部分保存为这里我于是将这一部分保存为GIF格式,调色板选择为精确,选择格式,调色板选择为精确,选择Alpha透明度,色版为白色透明度,色版为白色(此处颜色应与背景色相同此处颜色应与背景色相同),导出为,导出为logo.gif,图像,图像宽度为宽度为800px。因为因为Banner部分是一个细致的图片,如果使用部分是一个细致的图片,如果使用GIF格式颜色会有太大的格式颜色会有太大的损失,所以必须使用损失,所以必须使用JPEG格式,将文件导出为格式,将文件导出为banner.jpg。内容提要内容提要对

16、对TOP部分进行分析并将部分进行分析并将DIV结构写入结构写入Header中代码如下:中代码如下:程序代码程序代码首页首页博客博客设计设计相册相册论坛论坛关于关于为什么要这么写呢,因为对菜单使用列表为什么要这么写呢,因为对菜单使用列表形式,可以在以后方便对菜单定制样式。形式,可以在以后方便对菜单定制样式。内容提要内容提要而为什么要添加以下代码呢?而为什么要添加以下代码呢?插入这一段代码是可以方便地对菜单选项之间插入一些插入这一段代码是可以方便地对菜单选项之间插入一些分隔样式,例如预览图中的竖线分隔。分隔样式,例如预览图中的竖线分隔。内容提要内容提要然后我们在然后我们在css.css中再写入以下

17、样式:中再写入以下样式:程序代码程序代码/*页面头部页面头部*/#headerbackground:url(/logo.gif)no-repeat样式说明:样式说明:#header background:url(/logo.gif)no-repeat给页面头部分加入一个背景图片给页面头部分加入一个背景图片LOGO,并且不作填充。,并且不作填充。这里,我们没有指定这里,我们没有指定header层的高度,为什么不指定呢?层的高度,为什么不指定呢?因为因为header层中还有菜单和层中还有菜单和banner项,所以层的高度暂时是未知的,而层的属性又可项,所以层的高度暂时是未知的,而层的属性又可以让层

18、根据内容自动设定调整,因此我们并不需要指定高度。以让层根据内容自动设定调整,因此我们并不需要指定高度。内容提要内容提要当在当在HTML中定义为中定义为id=divID时,在时,在CSS对应的设置语法则是对应的设置语法则是#divID,如果在,如果在HTML中定义为中定义为class=divID时,则在时,则在CSS中对应的中对应的设置语法是设置语法是.divID。如果如果id=divID这个层中包括了一个这个层中包括了一个,则这个,则这个img在在CSS中对应的设置语法应该是中对应的设置语法应该是#divIDimg,同样,如果是包含在,同样,如果是包含在class=divID这个层中时,则设置

19、语法应该是这个层中时,则设置语法应该是.divIDimg,这一点,这一点希望大家要分清楚了。希望大家要分清楚了。另外,另外,HTML中的一切元素都是可以定义的,例如中的一切元素都是可以定义的,例如table、tr、td、th、form、img、input.等等,如果你要在等等,如果你要在CSS中设置它们,则直接写中设置它们,则直接写入元素的名称加上一对大括号入元素的名称加上一对大括号就可以了。所有的就可以了。所有的CSS代码都应该写在代码都应该写在大括号大括号中。中。内容提要内容提要按照上面的介绍,我们先在按照上面的介绍,我们先在css.css中写入以下代码:中写入以下代码:程序代码程序代码#

20、menuullist-style:none;margin:0px;#menuullifloat:left;解释一下:解释一下:#menu ul list-style:none;margin:0px;list-style:none,这一句是取消列表前点,因为我们不需要这些点。,这一句是取消列表前点,因为我们不需要这些点。margin:0px,这一句是删除,这一句是删除UL的缩进,这样做可以使所有的列表内容都不缩进。的缩进,这样做可以使所有的列表内容都不缩进。#menu ul li float:left;这里的这里的float:left的左右是让内容都在同一行显示,因此使用了浮动属性的左右是让内容

21、都在同一行显示,因此使用了浮动属性(float)。内容提要内容提要这时,列表内容是排列在一行,我们在这时,列表内容是排列在一行,我们在#menuulli再加入代码再加入代码margin:010px:程序代码程序代码#menuullist-style:none;margin:0px;#menuullifloat:left;margin:010pxmargin:010px的作用就是让列表内容之间产生一个的作用就是让列表内容之间产生一个20像素的距离像素的距离(左:左:10px,右:,右:10px),预览的效果如下:,预览的效果如下:现在,雏形已经出来了现在,雏形已经出来了内容提要内容提要我们再来固

22、定菜单的位置,把代码改成如下:我们再来固定菜单的位置,把代码改成如下:程序代码程序代码#menupadding:20px20px00/*利用利用padding:20px20px00来固定菜单位置来固定菜单位置*/#menuulfloat:right;list-style:none;margin:0px;/*添加了添加了float:right使得菜单位于页面右侧使得菜单位于页面右侧*/#menuullifloat:left;margin:010px这时,位置已经确定了这时,位置已经确定了内容提要内容提要构思图中,菜单选项之间还有一条竖线,怎么办呢?构思图中,菜单选项之间还有一条竖线,怎么办呢?别

23、忘了,我们早就已经留好了一个空的别忘了,我们早就已经留好了一个空的,要想加入竖线就使用它了。,要想加入竖线就使用它了。按照上面说的方法,我们再添加以下代码:按照上面说的方法,我们再添加以下代码:程序代码程序代码.menuDivwidth:1px;height:28px;background:#999,保存预览一,保存预览一下下内容提要内容提要菜单选项的文字却在顶部,我们再修改成以下代码:菜单选项的文字却在顶部,我们再修改成以下代码:程序代码程序代码#menuullifloat:left;margin:010px;display:block;line-height:28px效果基本上已经实现了,

24、剩下的就是修改菜单的超链接样式,在效果基本上已经实现了,剩下的就是修改菜单的超链接样式,在css.css中中添加以下代码:添加以下代码:程序代码程序代码#menuullia:link,#menuullia:visitedfont-weight:bold;color:#666#menuullia:hover最后的效果如下:最后的效果如下:内容提要内容提要用好用好border和和clear程序代码程序代码以上代码便可以实现设计草图中的以上代码便可以实现设计草图中的banner,在,在css.css中加入以下样式:中加入以下样式:程序代码程序代码#bannerbackground:url(/bann

25、er.jpg)030pxno-repeat;/*加入背景图片加入背景图片*/width:730px;/*设定层的宽度设定层的宽度*/margin:auto;/*层居中层居中*/height:240px;/*设定高度设定高度*/border-bottom:5pxsolid#EFEFEF;/*画一条浅灰色实线画一条浅灰色实线*/clear:both/*清除浮动清除浮动*/通过通过border很容易就绘制出一条实线了,并且减少了图片下载所占用的网络资源,使得很容易就绘制出一条实线了,并且减少了图片下载所占用的网络资源,使得页面载入速度变得更快。页面载入速度变得更快。内容提要内容提要另一个要说明的就是

26、另一个要说明的就是clear:both,表示清除左、右所有的浮动,在接下来的,表示清除左、右所有的浮动,在接下来的布局中我们还会用这个属性:布局中我们还会用这个属性:clear:left/right。在这里添加。在这里添加clear:both是由于之是由于之前的前的ul、li元素设置了浮动,如果不清除则会影响元素设置了浮动,如果不清除则会影响banner层位置的设定。层位置的设定。程序代码程序代码以上是页面主体部分以上是页面主体部分内容提要内容提要在在css.css中添加以下样式:中添加以下样式:程序代码程序代码#pagebodywidth:730px;/*设定宽度设定宽度*/margin:8

27、pxauto;/*居中居中*/#sidebarwidth:160px;/*设定宽度设定宽度*/text-align:left;/*文字左对齐文字左对齐*/float:left;/*浮动居左浮动居左*/clear:left;/*不允许左侧存在浮动不允许左侧存在浮动*/overflow:hidden;/*超出宽度部分隐藏超出宽度部分隐藏*/#mainbodywidth:570px;text-align:left;float:right;/*浮动居右浮动居右*/clear:right;/*不允许右侧存在浮动不允许右侧存在浮动*/overflow:hidden内容提要内容提要为了可以查看到效果,建议在

28、为了可以查看到效果,建议在#sidebar和和#mainbody中加入以下代码,中加入以下代码,预览完成后可以删除这段代码:预览完成后可以删除这段代码:程序代码程序代码border:1pxsolid#E00;height:200px保存预览效果,可以发现这两个层完美的浮动,在达到了我们布局的保存预览效果,可以发现这两个层完美的浮动,在达到了我们布局的要求,而两个层的实际宽度应该要求,而两个层的实际宽度应该160+2(border)+570+2=734px,已经超,已经超出了父层的宽度,由于出了父层的宽度,由于clear的原因,这两个层才不会出现错位的情况,的原因,这两个层才不会出现错位的情况,

29、这样可以使我们布局的页面不会因为内容太长(例如图片)而导致错位。这样可以使我们布局的页面不会因为内容太长(例如图片)而导致错位。内容提要内容提要而之后添加的而之后添加的overflow:hidden则可以使内容太长(例如图片)的部则可以使内容太长(例如图片)的部份自动被隐藏。通常我们会看到一些网页在载入时,由于图片太大,导份自动被隐藏。通常我们会看到一些网页在载入时,由于图片太大,导致布局被撑开,直到页面下载完成才恢复正常,通过添加致布局被撑开,直到页面下载完成才恢复正常,通过添加overflow:hidden就可以解决这个问题。就可以解决这个问题。CSS中每一个属性运用得当,就可以解决许多问题,或许它们与你中每一个属性运用得当,就可以解决许多问题,或许它们与你在布局的页并没有太大的关系,但是你必须知道这些属性的作用,在遇在布局的页并没有太大的关系,但是你必须知道这些属性的作用,在遇到难题的时候,可以尝试使用这些属性去解决问题。到难题的时候,可以尝试使用这些属性去解决问题。内容提要内容提要

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com