我创建了一个小脚本来使用 js 垂直居中表单。但是,它似乎不适用于 window.onresize,我不明白为什么。顺便说一句,它在 window.onload 上完美运行,如果我要求,window.onresize 会在调整大小时发出警报。这是我的代码:
var resetHeight = function(){
var loginForm = document.querySelector('.login-form');
var windowHeight = window.innerHeight;
var topNavbarHeight = document.querySelector('.top-navbar').clientHeight;
var loginFormHeight = loginForm.clientHeight;
var footerHeight = document.querySelector('footer').clientHeight;
var totalHeights = loginFormHeight + topNavbarHeight + footerHeight + 90;
var halfHeight = (windowHeight-totalHeights) / 2;
loginForm.style.paddingTop = halfHeight + "px";
loginForm.style.paddingBottom = halfHeight+ "px";
};
window.onload = resetHeight;
window.onresize = resetHeight;