как сделать чтобы выпадающее меню было точно над с помощью js

Подскажите как сделать чтобы меню создавалось закрывая надпись по которой происходит нажатие? Меню создается но рядом.

<div class="dropdown">

    <span class="dropdown-toggle">Сбербанк онлайн</span>

    <span id="dropdown-menu" class="dropdown-menu" absolute>
        <li>Сбербанк</li>
        <li>Т Банк</li>
        <li>СПБ</li>

    </span>
</div>
document.getElementById('dropdown-toggle').addEventListener('click', function () {
    var dropdownMenu = document.getElementById('dropdown-menu');
    var dropdowntoggle = document.getElementById('dropdown-toggle');
  
    var buttonRect = dropdowntoggle.getBoundingClientRect();

    if (dropdownMenu.style.display === 'block') {
        dropdownMenu.style.display = 'none';
    } else {
        dropdownMenu.style.display = 'block';
    }
});

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

Автор решения: ksa

как сделать чтобы меню создавалось закрывая надпись по которой происходит нажатие?

Такое можно сделать, например, вот так...

document.querySelector('.dropdown').addEventListener('click', function(){
  this.classList.toggle('on')
})
.dropdown {
  & > .dropdown-menu {
    display: none;
  }
  &.on > .dropdown-menu {
    display: block;
  }
  &.on > .dropdown-toggle {
    display: none;
  }
}
<div class="dropdown">
  <span class="dropdown-toggle">Сбербанк онлайн</span>
  <ul id="dropdown-menu" class="dropdown-menu">
    <li>Сбербанк</li>
    <li>Т Банк</li>
    <li>СПБ</li>
  </ul>
</div>

→ Ссылка