我有一个绝对定位的可变宽度div,我想定位在父(相对)div中的某个x位置。我可以通过设置
来做到这一点left: 50px
但是我希望元素以50px标记为中心,而不是让它的左边缘或右边缘为50px。我可以通过获取宽度并手动设置javascript来做到这一点,但有没有办法只用CSS做到这一点? (最好不要使用转换和其他更新的功能,虽然我会采取我能得到的)
答案 0 :(得分:2)
是
您仍然可以使用left:50px
但添加
transform:translateX(-50%);
将元素拖回其自身宽度的50%。无论是什么。
答案 1 :(得分:1)
只需将转换属性用于"翻译"该元素的宽度为左侧宽度的50%:
.element {
position: absolute;
left: 50px;
transform: translateX(-50%);
}
答案 2 :(得分:1)
div {
position: absolute;
left: 50px; transform: translate3d(-50%,0,0);
top:0;
border: 1px solid #000;
width: 100px; height: 100px;
}

<div>
</div>
&#13;