这样做的方法将包括少量的js,虽然不多。虽然首先我会通过css:
首先你需要添加:
left: 50%;
这会将左侧 div 的末尾带到页面的一半。然后给它一个类,以便我们可以在 javascript 中引用它,例如:
<div style='position:relative'>
<div class='center-absolute'>Content</div>
</div>
这样我们就可以在css和js中引用了。我们使用一个类,因为您应该只对一个元素使用一个 id。
这是您需要的CSS .center-absolute
:
.center-absolute {
position: absolute;
left: 50%;
}
然后是js。由于可能有多个元素,我们需要一个 for 循环在每个元素之间进行迭代:
var $centerAbsolute = document.getElementsByClassName('center-absolute');
for (i = 0; i < $centerAbsolute.length; i++) {
$centerAbsolute[i].style.marginLeft = $centerAbsolute[i].offsetWidth / 2 * -1 + 'px';
}
这将遍历所有具有 class of 的元素,center-absolute
并为它们提供一个左边距,该边距为以它为中心的元素宽度的负一半。
这是一个工作小提琴演示:
http://jsfiddle.net/Hive7/FqJ7T/