我在这里遇到了问题,我在一个<div>
存在中有很多我的元素position:absolute
。这一切似乎都很好,直到我改变了它的分辨率,我意识到元素没有定位在中心。
这是其中一个元素的示例代码。
p img {
position: absolute;
}
#contentback p img {
top: 300px;
left: 250px;
z-index: 2;
}
我在这里遇到了问题,我在一个<div>
存在中有很多我的元素position:absolute
。这一切似乎都很好,直到我改变了它的分辨率,我意识到元素没有定位在中心。
这是其中一个元素的示例代码。
p img {
position: absolute;
}
#contentback p img {
top: 300px;
left: 250px;
z-index: 2;
}
利用
margin:auto;
如果你还想调整,
margin-left:x%;
margin-right:x%;
你可以改变x
我所知道的将绝对定位的元素居中的最佳技术:
.element {
width:500px;
position:absolute;
left:50%;
margin-left:-250px;
}
此方法要求对象具有固定宽度。但它对我来说效果很好。
指定width: xxpx
并使用margin:auto;
更新
删除left: xxpx
以使其center
对齐。
首先,定位是不可能的absolute
。这样的定位只是让元素脱离了body的正常流动,并不能自动居中。为此,您必须使用relative
定位。元素必须有一个固定的宽度,否则浏览器永远不会知道应该留下多少边距作为边距。然后,申请margin: auto
。表定位也可以实现这一点,但它非常复杂。请注意,您不能通过这种方法将元素定位在垂直方向的中心!