Я написал следующий скрипт, чтобы отобразить скрытый элемент, а затем зафиксировать его положение в центре страницы.
function popUp(id,type) {
var popUpBox = document.getElementById(id);
popUpBox.style.position = "fixed";
popUpBox.style.display = "block";
popUpBox.style.zIndex = "6";
popUpBox.style.top = "50%";
popUpBox.style.left = "50%";
var height = popUpBox.offsetHeight;
var width = popUpBox.offsetWidth;
var marginTop = (height / 2) * -1;
var marginLeft = (width / 2) * -1;
popUpBox.style.marginTop = marginTop + "px";
popUpBox.style.marginLeft = marginLeft + "px";
}
Когда эта функция вызывается событием onclick, offsetHeight и offsetWidth вычисляются неверно, что приводит к неправильному центрированию элемента. Если я щелкну элемент onclick во второй раз, offsetHeight и offsetWidth вычисляются правильно.
Я пытался изменить порядок во всех смыслах, и это сводит меня с ума! Любая помощь очень ценится!