假如一个div定位之后通过translate做了移动:
div {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 300px;
height: 200px;
background: red;
}
使用offsetLeft和offsetTop获取坐标时由于translate的-50%,获取的并不是显示后的left和top值,而是translate之前的left和top值。所以假如之后要做其它运算,要看情况算上div.offsetWidth/2和div.offsetHeight / 2。