急,请问css的position的定位问题?

来源:百度知道 编辑:UC知道 时间:2024/06/09 20:51:43
急,请问css的position的定位问题?
<style>
body{
text-align:center;
}
div{
border:1px solid red;
background:red;
width:300px;
position:absolute;

}
</style>
<body>
<div>123</div>
</body>

我在body中设置了text-align居中,在div中设置了绝对定位

在div中设置了绝对定位就是基于ie浏览器的定位,可我还没设置left,right,top这些距离,

本来应该居中的,为什么显示出来的是居中过几十象素的位置?我还没设置left,right,top啊?

什么原因?

你的写法在不同浏览器下有不同效果。
1.在ie6下因为你设置了body,text-align:center;,所以div以其最左侧为基准居中,也就是div最左上角那点为基准来居中。

2.在火狐下不支持text-align:center;所以直接在页面左侧,你会发现不是挨着浏览器边框,是因为网页自身默认内容部分有一定的边距,你只有把边距设为0,才会真正的挨着浏览器的边框,这就是所有body里都有margin:0;这个属性的原因。

body设置了text-align:center; div 里面的位置也相对的居中了 如果你给DIV设置text-align:left就居中了