?
如何相对于屏幕显示,而不是相对于页面显示。例如,我想显示一个带有广告的窗口,无论页面滚动如何,此窗口都应居中并位于其他元素之上,并且位于屏幕上的居中。
也许是这样的:
$('#center').css("position","absolute");
$('#center').css("top", Math.max(0, (($(window).height() - $('#center').outerHeight()) / 2) + $(window).scrollTop()) + "px");
$('#center').css("left", Math.max(0, (($(window).width() - $('#center').outerWidth()) / 2) + $(window).scrollLeft()) + "px");
div{
border-style:solid;
border-width:2px;
border-color:gray;
padding:10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="center">Centered content</div>