• [织梦吧]唯一域名:www.dedecms8.com,织梦DedeCMS学习平台.

当前位置: > 网页制作 > DIV&CSS >

《十天学会web标准div+css》10:div+css网页标准布局案例一(2)

来源: www.dedecms8.com 编辑:织梦吧 时间:2011-01-03点击:

</div>

html框架代码写完后,下边就需要设置css样式表了。先测量下效果图的整体宽度,然后设置container也是这个宽度并居中。说起测量效果 图宽度,方法有多种,可以直接查看图片尺寸。如果测量其中某一块的宽度,可以使用测量软件,也可以在ps下测量。本人一般在ps下测量,因为效果图在ps 下制作的,所以用ps测量也比较方便。方法是首选项里把ps的单位改为像素,然后用选区选中要测量的部分,在信息面板中就显示出当前选区的宽高了(如果你 实在不知道怎么改单位,怎么选区怎么查看的,就要补习一下ps啦)。

测量后得知:整体宽度为900px,main部的宽度为664px,side宽度为228px。把这三个基本的宽度测量后,下面就可以写css代码 了。由于本实例是按照实际当中应用来做的,所以css样式表就最好写在单独文件里了,不要再写在文件内部了,这样可以利用代码的重用性,减少很多劳动强 度。下面就新建一个css样式表文件:在DW文件菜单选择新建,然后在打开的窗口页面类型中选择css,创建后保存在css文件夹中并命名为 layout.css

保存后先设置全局的样式,而后写每一块单独的样式,全局样式如下:

body { margin:0 auto; font-size:12px; font-family:Verdana; line-height:1.5;}
ul,dl,dd,h1,h2,h3,h4,h5,h6,form,p { padding:0; margin:0;}
ul { list-style:none;}
img { border:0px;}
a { color:#05a; text-decoration:none;}
a:hover { color:#f00;}

全局的样式定义完后,下面定义以上几大块的样式,先设置下#containerr的样式如下:

#container { width:900px; margin:0 auto;}

预览下index.html,发现并没有改变,这是为什么呢?因为刚定义的样式表没有和html文件关联,所以设置的样式当然不能对它生效了,还记 得第一天课时讲的几种样式并联方式吗?下面我操作一遍:在css面板中点击附加样式表按钮,然后在弹出的窗口中选择刚才创建的样式表文件,确定,ok了, 预览一下,是不是整体已经居中了呢。

如果已经是宽度为900px并居中,说明样式和文件关联好了。这就是为什么要定义一个站点了,因为许多文件要关联在一起才能构成一个完整的网页,所 以要把它们放在一起,才能让这个页面找到和它相关的文件在哪里。下面设置内部几大块的样式,为了便于观察,我们把部分块设置了背景色。代码如下:

/*body*/
#container { width:900px; margin:0 auto;}

/*header*/
#header { height:70px; background:#CCFFCC; margin-bottom:8px;}
#nav { height:30px; background:#CCFFCC; margin-bottom:8px;}

 

/*main*/
#maincontent { margin-bottom:8px;}
#main { float:left; width:664px; height:500px; background:#FFFF99;}
#side { float:right; width:228px; height:500px; background:#FFCC99;}

 

/*footer*/
#footer { height:70px; background:#CCFFCC;}

现在预览一下:在IE6下#maincontent的底部外边距并没有生效,而在IE8下,#footer干脆跑到#maincontent的下边 了,这又是怎么回事呢?如果前边几天你都认真学的话,那么这个问题已经不是问题了。这就是之前我们讲的,如果一个容器内的元素都浮动的话,那么它的高度将 不会去适应内部元素的高度。解决办法是在#maincontent增加 overflow:auto; zoom:1;,这样就可以让它自动适应内部元素的高度了。

现在再预览一下,是不是都正常了。为了更加保险,建议在header、nav、maincontent、footer之间增加如下一句代码并设置css样式如下,它的作用是清除浮动。

<div class="clearfloat"></div>

.clearfloat {clear:both;height:0;font-size: 1px;line-height: 0px;}

 
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  2. <html xmlns="http://www.w3.org/1999/xhtml"> 
  3. <head> 
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
  5. <title>主页</

About D8

  • ©2014 织梦吧(d8) DedeCMS学习交流平台
  • 唯一网址 www.DedeCMS8.com 网站地图
  • 联系我们 1170734538@qq.com ,  QQ