【发布时间】:2012-07-26 15:15:11
【问题描述】:
可能重复:
position: absolute without setting top/left/bottom/right?
看下面的代码,我有 div#box2 有 position: absolute 设置就可以了。它位于两个具有 position: static 设置的 div 之间。根据以下代码,我希望 div#box2 位于 body 元素的左上角。但是,当它被渲染时,它会收到一个将其置于 box1 下方的最高值。为什么会这样?
我了解当我将 div#box2 的顶部值显式设置为 0px 时,它会出现在顶部。我只是不知道为什么浏览器一开始就没有计算到 0px 。
这里是一些示例代码:
<!DOCTYPE html>
<html>
<head>
<title>Position Test</title>
<style type="text/css">
body { background-color: #DEDEDE; }
#content { border: solid; }
#content div { height: 150px; opacity: .7;}
#box1 { background-color: red; }
#box2 { background-color: yellow; }
#box3 { background-color: lightblue; }
#content div { width: 150px; }
#box2 { position: absolute; text-align: right;}
</style>
</head>
<body>
<div id="content">
<div id="box1"><span>1</span></div>
<div id="box2"><span>2</span></div>
<div id="box3"><span>3</span></div>
</div>
</body>
</html>
【问题讨论】:
-
你想把 div box 2 放在 div box 1 的位置吗?
-
为什么没有设置为'position:relative'的div?