Popup - проблема с расположением -HTML, CSS

У меня еть модальное окно, и сейчас кнопка его вызова всегда находится в центре повверх всего, соответственно и popup тоже всегда по центру поверх всего, как и надо, но как только я смещаю кнопку, то popup всегда открывается около нее.

Можно ли как то сделать что бы он не зависел так скажем от нее, то есть например я хотел бы сделать так, что бы кнопку можна было добавлять где угодно, в разной точке контента, но при этом что бы попап открывался всега по центру екрана, потому что сейчас у меня сделано так, что если я уберу кнопку с <div class="center"> то он вообще не будет открыватся, а именно в этом классе у меня пишет что бы он открывался по средине и кнопка соответственно тоже там.

Заранее спасибо!

document.getElementById("open-popup-btn").addEventListener("click", function() {
  document.getElementsByClassName("popup")[0].classList.add("active");
});

document.getElementById("dismiss-popup-btn").addEventListener("click", function() {
  document.getElementsByClassName("popup")[0].classList.remove("active");
});
@import "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css";
body {
  background-color: #ddd;
  font-family:"Raleway";
}

.center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.popup {
  width: 350px;
  height: 280px;
  padding: 30px 20px;
  background-color: #f5f5f5;
  border-radius: 10px;
  box-sizing: border-box;
  z-index: 2;
  text-align: center;
  opacity: 0;
  top: -200%;
  transform: translate(-50%, -50%) scale(0.5);
  transition: opacity 300ms ease-in-out,
              top 1000ms ease-in-out,
              transform 1000ms ease-in-out;
}

.popup.active {
  opacity: 1;
  top: 50%;
  transform: translate(-50%, -50%) scale(1);
  transition: transform 300ms cubic-bezier(0.18, 0.89, 0.43, 1.19);
}

.popup .icon {
  margin: 5px 0px;
  width: 50px;
  height: 50px;
  border: 2px solid #34f234;
  text-align: center;
  display: inline-block;
  border-radius: 50%;
  line-height: 60px;
}

.popup .icon i.fa {
  font-size: 30px;
  color: #34f234
}

.popup .title {
  margin: 5px 0px;
  font-size: 30px;
  font-weight: 600;
}

.popup .description {
  color: #222;
  font-size: 15px;
  padding: 5px;
}

.popup .dismiss-btn {
  margin-top: 15px;
}

.popup .dismiss-btn button {
  padding: 10px 20px;
  background-color: #111;
  color: #f5f5f5;
  border: 2px solid #111;
  font-size: 16px;
  font-weight: 600;
  outline: none;
  border-radius: 10px;
  cursor: pointer;
  transition: all 300ms ease-in-out;
}

.popup .dismiss-btn button:hover {
  color: #111;
  background-color: #f5f5f5;
}
.popup > div {
    position: relative;
    top: 10px;
    opacity: 0;
  }
  
  .popup.active > div {
    top: 0px;
    opacity: 1;
  }
  
  .popup.active .icon {
    transition: all 300ms ease-in-out 250ms;
  }
  
  .popup.active .title {
    transition: all 300ms ease-in-out 300ms;
  }
  
  .popup.active .description {
    transition: all 300ms ease-in-out 350ms;
  }
  
  .popup.active .dismiss-btn {
    transition: all 300ms ease-in-out 400ms;
  }
<div class="popup center">
  <div class="icon">
    <i class="fa fa-check"></i>
  </div>
  <div class="title">
    Success!!
  </div>
  <div class="description">
    Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolor tenetur nobis maxime quidem natus.
  </div>
  <div class="dismiss-btn">
    <button id="dismiss-popup-btn">
      Dismiss
    </button>
  </div>
</div>
<div class="center">
  <button id="open-popup-btn">
    Open Popup
  </button>
</div>


Ответы (0 шт):