【发布时间】:2011-06-15 13:20:47
【问题描述】:
编辑:好的,所以我在这里有点茫然。其实,亏大了。我正在认真考虑增加个人对 CSS 及其反直觉的仇恨。
所以我试图制作一个 3 列布局。它曾经基于Holy Grail layout,但后来我决定不需要流动性或相等的列高,并开始修改 CSS 以更好地满足我的需要。
首先,中间列中的文本,而不是换行,一直拉伸中间列,将其移动到左列下方。我实施了@ZincX 的使用固定宽度列的建议(见下面他的帖子)。这固定了柱子,但它们周围的容器并没有随着它们伸展。如果你打开我的网站(见下面的链接),整个页脚隐藏在页眉后面。
另外,我决定做分层标记 - 我将标题移到源代码的底部,并以绝对定位将其放在顶部。一旦我把它整理好,我可能会用左边的导航栏来做这个。对于那些不熟悉这种做法的人,我也是前几天才知道的 - 将您的重要内容放在页面顶部使其对搜索引擎更加友好。
那么如何才能解决这个混乱的布局呢?我只想要一个简单的“页眉、三列、页脚”布局。以像素为单位给出绝对位置甚至是一种在大多数浏览器中都能很好显示的好习惯吗?
【问题讨论】:
-
@Egasimus - 您是否希望创建一个带有页眉、三列(左右占据所需宽度,中间占据剩余空间)和页脚的网站?
-
好吧,我不确定我是否会这样说——但左右两列的宽度是固定的(160px 左右),而中间列确实会占据所有剩余空间。整个布局将占据视口的 90%(最小宽度:600 像素;最大宽度:900 像素),并且最好居中。对于无法解决本应相当简单的问题,我感到非常沮丧......
-
我想我正在放弃使用 position: absolute - 绝对 div 被从流程中取出,并且与浮动不同,似乎没有办法让容器将它们包围起来......跨度>
-
别担心 - CSS 有时会让人非常沮丧 - 不管你信不信,看似简单的事情并不总是像你想象的那么简单。我认为您摆脱了
position:absolute属性并改用float是正确的。绝对定位很棒,但不应该用作布局的一部分——它更像是一种提供效果的样式技术(无论如何在我看来)。 -
@Egasimus - 我不确定你是否乐意从头开始布局页面然后重新添加内容 - 但如果你愿意,试试this link