潮州信息港
旅游
当前位置:首页 > 旅游

用CSS创建一个布局居中的页面

发布时间:2019-12-05 08:09:43 编辑:笔名

解析CSS编码

与基于表格的版面设计比起来,它的主体样式并没有什么变化。它只不过设置了一下背景颜色,默认正文字体以及尺寸大小。

div#outer是其中的一种样式,它是这一技术的关键。这就是前面提到过的以div取代表格的样式,它创建了居中的盒子,而这个盒子成了包容该页面所有内容的容器。将宽度设置为80%的规则设定了该div的宽度,就跟表格标签的相应属性规定该表格的宽度一样。与此相类似,background-color:#FFFFFF为div建立了一个白色的背景,就如同表格中bgcolor="#FFFFFF"属性为表格设置白色背景一样。margin-top: 50px and margin-bottom: 50px则用顶端和底端的空白来取代表格中用来造成垂直空间的空白段落。

这一技术的关键在于,外部div的中心要安排合适。这里存在一个难题,可以说是我们面临的一个挑战,即div没有像align="center"这样一个属性,这与表格不同,表格中有这样一种属性。你可以在div的母元素(在本案例,指< body >标签)中使用text-align: center来将外部div置于中心位置。尽管除了正文以外,大多数浏览器还会为一些诸如div的块元素使用该队列,但是我们有证据可以证明它是对排列正文这一属性的误用,而且它会使问题复杂化,就如同你创建一些额外的样式来使那些已按正常标准对齐的文字重新回到左边一样。

用CSS来将块元素置于中心位置的正确方法是这样设置:margin-left: auto,margin-right: auto。这就指示浏览器自动计算页面两边合适的空白宽度,从而将div置于中心。border: thin solid #000000这一规则在外部div的周围添加了一个边界,这是因为用CSS添加很容易,而如果用表格的话就很难了。CSS编码中的其它部份则规定了div的页眉,页脚,nav,以及主要内容。

div#header和div#footer则设定了那些div的页边空白以及填料。此外,div#header包含了text-align: center这一规则,它可以将页眉文本置于中心位置,div#footer则包含了border-top: thin solid #000000这一规则,它可以创建一个围绕该div的顶端边缘的边界,而在基于表格的版面设计中,与它相对应的则是位于页脚上方的一些水平线。

在这个居中的盒子的中央,div#nav和div#main建立了两个纵列。在div#nav样式中,float: left这一规则将div推到它的母元素(外部div)的左边,而width: 25%这一规则将该div的宽度设置为它的母元素的25%。由于该nav div被移到了左端,其宽度也被限定了,这就为主要的div留下了活动空间,让它可以移到该nav div的右边,这样就取得了两个纵列的效果。div#main样式包含了左边页面空白30%的规则,以让主要文本排列在一个整齐的纵栏中,而不是分散开来,甚至散到该nav纵栏外面。主要的div左边的空白页面比nav div中左边空白页面的宽度稍稍大一点。在我的“用CSS漂浮来创建一个三栏页面版面设计”一文中,我详细介绍了一种技术,这一技术是用CSS漂浮来创建页面设计中的多个纵列的。

本文作者: Michael Meadhra,自Web问世之初便涉足IT行业,目前已出版了30多本书,其中包括How to Do Everything with Dreamweaver MX。(Osborne/McGraw-Hill出版)。

责任编辑:李宁

欢迎评论或投稿

小孩脾胃虚弱吃什么
孩子脸色发黄怎么回事
新生儿眼睛有眼屎
儿童咳嗽专用药多少钱
友情链接