css布局实例

定义body样式先定义整个页面的body的样式,代码如下:body { margin: 0px;padding…


生猛大蝦 - abstract low poly background with connecting dots
🔄 2026 实时联网保鲜核验(2026-11-11):这套 2006 年的绝对定位三栏法在 2026 年仍能跑,但已非首选;当前主流是 CSS Grid 或 Flexbox,尤其三栏与响应式布局更适合用网格,absolute 只适合少量叠放与特殊定位,且要注意缩放与可访问性。

定义body样式
先定义整个页面的body的样式,代码如下:
body { margin: 0px;
padding: 0px;
background: url(../images/bg_logo.gif) #fefefe no-repeat right bottom;
font-family: ‘lucida grande’,’lucida sans unicode’,’宋体’,’新宋体’,arial,verdana,sans-serif;
color: #666;
font-size:12px;
line-height:150%; }
以上代码的作用在上一天的教程有详细说明,大家应该一看就明白。定义了边框边距为0;背景颜色为#fefefe,背景图片为bg_logo.gif,图片位于页面右下角,不重复;定义了字体尺寸为12px;字体颜色为#666;行高150%。
3.定义主要的div
初次使用css布局,我决定采用固定宽度的三列布局(比自适应分辨率的设计简单,hoho,别说我偷懒,先实现简单的,增加点信心嘛!)。分别定义左中右的宽度为200:300:280,在css中如下定义:
/*定义页面左列样式*/
#left{ width:200px;
margin: 0px;
padding: 0px;
background: #cdcdcd;
}
/*定义页面中列样式*/
#middle{ position: absolute;
left:200px;
top:0px;
width:300px;
margin: 0px;
padding: 0px;
background: #dadada;
}
/*定义页面右列样式*/
#right{ position: absolute;
left:500px;
top:0px;
width:280px;
margin: 0px;
padding: 0px;
background: #fff; }
注意:定义中列和右列div我都采用了position: absolute;,然后分别定义了left:200px;top:0px;和left:500px;top:0px;这是这个布局的关键,我采用了层的绝对定位。定义中间列距离页面左边框200px,距离顶部0px;定义右列距离页面左边框500px,距离顶部0px;。
这时候整个页面的代码是:
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“>
http://www.w3.org/1999/xhtml” lang=”gb2312″>

欢迎进入新《网页设计师》:web标准教程及推广







页面左列
页面中列



这时候页面的效果仅仅可以看到三个并列的灰色矩形,和一个背景图。但是我希望高度是满屏的,怎么办呢?
4.100%自适应高度?
为了保持三列有同样的高度,我尝试在#left、#middle和#right中设置”height:100%;”,但发现完全没有预想的自适应高度效果。经过一番尝试后,我只好给每个div一个绝对高度:”height:1000px;”,并且随着内容的增加,需要不断修正这个值。难道没有办法自适应高度了吗?随着阿捷自己学习的深入,发现一个变通的解决办法,实际上根本不需要设置100%,我们已经被table思维禁锢太深了,这个办法在下一节的学习中详细介绍。

❓ 延伸问答与排错指南(FAQ)
CSS 三列固定宽度布局怎么写?

本文的做法是把左列设为普通流,宽度 200px;中列和右列用 position:absolute 绝对定位,分别 left:200px 和 left:500px,再配合各自宽度 300px、280px。这样能快速搭出固定宽度三栏页面。

为什么给 div 设置 height:100% 没效果?

因为父级高度没有被明确建立时,子元素的 100% 高度往往无法按预期计算。文章里作者尝试后发现三列并不会自动拉满屏幕,只能先用固定高度顶住,说明单纯写 100% 并不能解决所有布局问题。

这篇文章对新手学 CSS 有什么价值?

它展示了早期 CSS 布局从基础样式到三列排版的完整思路,也暴露了新手常见误区:把网页当成表格来想。适合用来理解定位、宽度和高度之间的关系,先把页面搭出来,再继续优化自适应。


2 条对“css布局实例”的回复

  1. 死鱼 的头像
    死鱼

    站长资讯里面有一篇相关的介绍你可以看一下的
    链接:http://www.chinahtml.com/webdesign/5/2006/css-css-11396357553485.shtml

  2. 鱼乐 的头像
    鱼乐

    4.100%自适应高度?
    为了保持三列有同样的高度,我尝试在#left、#middle和#right中设置”height:100%;”,但发现完全没有预想的自适应高度效果。经过一番尝试后,我只好给每个div一个绝对高度:”height:1000px;”,并且随着内容的增加,需要不断修正这个值。难道没有办法自适应高度了吗?随着阿捷自己学习的深入,发现一个变通的解决办法,实际上根本不需要设置100%,我们已经被table思维禁锢太深了,这个办法在下一节的学习中详细介绍。
    关于这个问题,相关的文章有链接嘛?能否告知下?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理。