1

我有以下标记:

<div id="playArea" style="position: relative;">
    <div style="position: absolute; left: 295px; top: -1px; width: 313px; height: 269px;">Hello</div>
    <div style="position: absolute; left: 63px; top: 35px; width: 80px; height: 42px;">World</div>
    <div style="position: absolute; left: 534px; top: 329px; width: 183px; height: 251px;">Bye</div>
</div>

但我想在'playArea' div 下有一段文本,但因为playArea 内的所有div 都是绝对的,所以文本不会出现在最后一个绝对定位的div 的底部。

我已经对此进行了调查,并通过使用 float:left 和 clear:left 找到了替代方法,但是在第一个 div 上使用此方法后,您无法正确定位 div,因为第二个 div 的起点位于第一个 div 下方而不是(0,0)。关于我如何得到这个的任何想法。

谢谢

4

4 回答 4

0

在阅读了您和“BalusC”之间的评论线程后,您似乎已经修改了您的 CSS,现在正尝试浮动您的项目,并使用 margin-top 和 margin-left 进行定位。你完全可以这样做,但是你忘记了你也可以使用负边距来定位你的元素。例如,如果您使用margin-top:-10px; 然后它会将元素向上拉(而不是向下推,就像正常的正值边距一样)。您的所有其他利润也是如此。

这似乎是你现在缺少的成分。

于 2009-12-24T14:43:55.877 回答
0

如果我理解正确,你只需要给“playArea” div 正确的高度。

编辑:我的意思是,里面所有东西的总高度。

于 2009-12-24T11:18:01.953 回答
0

但我想在'playArea' div 下有一段文本,但因为playArea 内的所有div 都是绝对的,所以文本不会出现在最后一个绝对定位的div 的底部。

正如您似乎已经知道所有尺寸和位置一样,只需向其中添加另一个绝对定位的 div 并将相关内容放入其中。

我已经对此进行了调查,并通过使用 float:left 和 clear:left 找到了替代方法,但是在第一个 div 上使用此方法后,您无法正确定位 div,因为第二个 div 的起点位于第一个 div 下方而不是(0,0)。关于我如何得到这个的任何想法。

您需要移除position: absolute以使浮动正确。只要宽度和高度就足够了。

于 2009-12-24T11:20:48.657 回答
0

将三个内部 div 向左浮动,放在overflow: hidden;playArea div 上,然后将您<p>放在三个内部 div 下方clear: both;

于 2009-12-24T11:22:58.340 回答