我正在使用这样的布局开发一个 3 列的网站:
<div id='left' style='left: 0; width: 150px; '> ... </div>
<div id='middle' style='left: 150px; right: 200px' > ... </div>
<div id='right' style='right: 0; width: 200px; '> ... </div>
但是,考虑到默认的 CSS 'position' 属性<DIV>'s
是'static' <DIV>'s
,正如预期的那样,我的显示在另一个下方。
所以我将 CSS 属性 'position' 设置为 'relative',并将 'middle' 和 'right' 的 'top' 属性更改<DIV>'s
为 -(减去)前面的高度<DIV>
。它工作得很好,但是这种方法给我带来了两个问题:
1) 即使 Internet Explorer 7 正确显示了三列,它仍然保持垂直滚动条就好像它们<DIV>'s
被定位在另一个之下一样,并且在内容结束后有很多空白区域。我想要那个。
2)这些元素的高度是可变的,所以我真的不知道为每个<DIV>
'top'属性设置哪个值;我不想硬编码它。
所以我的问题是,实现这种布局的最佳(简单+优雅)方式是什么?我想避免绝对定位,我也想保持我的设计无表格。