将一个绝对定位的div水平垂直居中对齐

  发布时间:2014-01-27 11:39:06   作者:佚名   我要评论
在某些时候可能需要将一个绝对定位的div在它的父对象中垂直居中对齐,可能用到的频率不是太高,但是偶尔也会用到,下面就简单介绍一下如何实现此功能

在通常情况下,可以为元素添加margin:0px auto即可让元素在它的父元素水平居中,然后再将它设置为垂直居中对齐即可。但是为绝对定位的对象添加margin:0px auto并不能生效,所以说还是要用老办法实现。

代码示例如下:

复制代码
代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<title>蚂蚁部落</title>
<style type="text/css">
.father
{
width:600px;
height:600px;
background-color:green;
margin:0px auto;
position:relative;
}
.children
{
position:absolute;
width:200px;
height:200px;
left:200px;
top:200px;
background-color:red;
}
</style>
</head>
<body>
<div class="father">
<div class="children"></div>
</div>
</body>
</html>

以上代码可以将子div在父div中水平垂直居中对齐,下面就简单介绍一下几个要点:
1.父元素是使用相对定位,这样子元素就可以以它作为位移参考对象。
2.top属性值计算方式:父元素的高度/2-子元素高度/2,left属性值计算方式:父元素宽度值/2-子元素宽度值/2。

相关文章

最新评论