在网页开发中,经常会有将网页切分为不同的局部块,然后再在不同的快中显示不同的内容,如:顶部块、主题内容块、侧边栏信息快、底部信息块等。
使用DIV可以将网页切成不同的块,然后使用CSS样式表定义各不同块的具体显示。一般将div布局与CSS样式分不同文件编写,div切割在html文件中实现,然后将独立的CSS样式表文件加载到html文件中。
下面以源代码及效果图的方式,展示一个简单的网页布局案例。
最终效果图:
说明:将网页分成了上中下三部分,上面顶部(红色),中间部分(×××)又分为左边的主体内容(蓝色)和右边的侧边栏(灰色)两个子块,下面是底部(绿色)。边缘暗红色的是背景,背景可以指定颜色或是设置背景图片。
要想将网页切割成这样的块,需要在html中使用div标签定义,本例定义块代码如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="description" content="this is a web station for alone."> <meta name="keywords" content="perfect,home,blog,web,station"> <title>我的个人站点</title> <!-- 在html文件中使用link标签添加为这个文件定制的CSS样式表 --> <link rel="stylesheet" type="text/css" href="myweb.css" /> </head> <body> <!-- 定义顶部块,并为这个块设定一个名称为head的id值 --> <div id="head"> <h1>这里是顶部栏</h1> </div> <!-- 定义主体容器块,并为这个块设定一个名称为container的id值 --> <div id="container"> <!-- 在contarner块中定义两个子块,然后分别为这两个块设定名称为main、siderbar的class类 --> <div class="main"><h1>这里是主体内容部分</h1></div> <div class="sidebar"><h1>这里是侧边栏</h1></div> </div> <!-- 定义底部块,并为这个块设定一个名称为bottom的id值 --> <div id="bottom"><h1>这里是底部</h1></div> </body> </html>
说明:
1.使用上面的代码,虽然可以将页面切成不同的块,但是默认的块没有大小、颜色之分,根本看不出来。
2.为每个div元素设定了一个id或class属性来标识,每个属性值代表对应的元素,在CSS样式表中使用。id值必须唯一,一个id值代表一个元素。但class值可以重复,一个class值表示同名的一类元素。
为了在网页中清晰的分辨各块,需要定义一个CSS样式表myweb.css来定义不同块及元素的显示。
下面的myweb.css文件对上面的html文件里各部分定义了如何显示:
/*在css文件中,默认的html元素可以直接使用名称,这里定义了整个网页body部分的颜色, 是十六进制的RGB表示方法,即图片周边的暗红色。也可以使用哪个url()的方式为body部分 设置背景图片*/ body{ background-color: #551122; <!-- background-p_w_picpath: url("../bj.jpg");--> } /*html元素的id属性使用#开头。width、herght表示宽与高,大小使用像素表示。 margin表示显示方式,默认靠左,auto设置为居中显示,并设定背景颜色为red*/ #head{ width: 960px; height: 80px; margin: auto; background-color: red; } #container{ width: 960px; height: 500px; margin: auto; background-color: yellow; } /*html元素定义class属性使用点.开头。float设置该块的漂浮属性,在container内向左移, 另一个快siderbar在container内向右移*/ .main{ float: left; width: 700px; height: 500px; background-color: blue; } /*因为main和siderbar在container内,所以两个块的宽度之和不应该超过container的宽度*/ .sidebar{ float: right; width: 240px; height: 500px; background-color: gray; } /*底部块的id值,大小及颜色、居中显示*/ #bottom{ width: 960px; height: 100px; background-color: green; margin: auto; } /*重新定义h1元素的显示,由于h1默认有边距margin-top将顶部间距设为0, text-align为设置字体的显示位置属性:center是居中显示,font-size定义大小*/ h1{ margin-top: 0px; text-align: center; color: white; font-size: 35px; } /*定义bottom中的h1显示方式,其他的h1字体颜色为white,此处h1颜色为red,大小也改变。 当多处定义了同一个元素时,最精确的生效*/ #bottom h1{ margin-top: 0px; text-align: center; color: red; font-size: 50px; }
说明:
1.在css样式表中,html的默认元素可以直接使用,元素的id使用“#”+“id值”表示,元素的class使用“.”+“class值”表示;
2.CSS可用的属性值太多,可以根据手册查询,此处只根据需要使用了宽度、高度、颜色、显示位置等属性;
3.在html中h1...h7有默认的显示形式,可以在CSS中改变其显示属性,并且可以使用精确定位的方式设置不同地方的h1有不同的显示。
根据以上内容,就可以使用Div+CSS为自己的网页布局了。