我有一个基本布局,其中body div设置为特定宽度。并且左边和右边的边距设置为自动。导致div居中。
现在,当现在将所有子元素定位在此div中时,最好使用绝对定位还是固定坐标?这些子元素基本上是文本列,一些图像和一些标题。我发现将它们全部浮动到左侧会使它们堆叠在一起。这基本上就是我想要的。但是指定坐标会更好吗?我看到你遇到IE的小常见边缘错误。我知道绝对定位会解决它。但这会是一个肮脏的修复吗?
我的意思是,布局本身在某种意义上是流动的。但是身体div有它的宽度。因此,无论分辨率如何,子元素都不会移动。
答案 0 :(得分:14)
注意:IE中的保证金错误也可以通过在没有保证金的div中包含带有边距的div来固定,并浮动该外部div。
关于绝对与浮动:我建议你看一下this page,这看起来像一个很好的总结,并问自己是否有任何缺点为你举起一个红旗。
如果所有div的内容都是静态的,我个人会使用绝对定位,如果有些是动态的,我会使用float。但这是一个主观的答案。
答案 1 :(得分:1)
我没有看到使用绝对定位的问题。一个可能的缺点是你的样式表有点难以维护,因为你会指定宽度和位置。如果您将来必须更改任何列的宽度,则必须更新2个位置的像素值。使用浮动和保证金的IMO将来更容易修改。