0
我有一个div,我显示并放置在另一个元素上。当我将CSS转换应用于整个身体时,该位置不再被正确计算。这里的JavaScript:CSS缩放转换影响位置计算
function Start() {
$('#ScaleBodyBtn').click(function() {
$('body').css({
'transform': 'scale(1.5)',
'transform-origin': 'top left'
});
});
$('#ShowOverlayBtn').click(function() {
var ThePosition = $('#ShowOverlayBtn').offset();
$('#Overlay').css({
'top': ThePosition.top,
'left': ThePosition.left
}).show();
});
}
$(Start);
这里的HTML/CSS
<input id="ScaleBodyBtn" type="button" value="scale body" />
<input id="ShowOverlayBtn" type="button" value="show overlay" />
<div id="Overlay"></div>
#ShowOverlayBtn,
#ScaleBodyBtn {
clear: both;
display: block;
margin: 50px 30px;
}
#Overlay {
display: none;
background: red;
height: 50px;
width: 50px;
position: absolute;
}
而这里的the jsFiddle进行复制的问题。您点击显示覆盖图,它就会出现在按钮的正上方。先刷新并按Scale Body,这次当你点击Show Overlay按钮时,红色的div不在正确的位置。
我需要改变以解决这个问题?