Как расширить меню в две стороны?

252
16 июня 2022, 23:10

Как расширить меню в две стороны?

setTimeout(() => { document.getElementById("mySidenav").style.width = "40%"; }, 2000);

если делать так то он расширяется только вправо

Answer 1

начнем с того, что в нашей жизни счет и чтение идет слева направо, так же и пиксели на мониторе идут слева направо, поэтому у вас и идут расширение в правую сторону при изменение ширины. Приведу Вам два простых примера:

  1. Мы создаем родительский div с position: relative; это для того чтобы дочерние элементы позиционировались относительно родительского элемента. После этого с помощью postition: absolute мы устанавливаем нужный нам блок в нужном положении с заданными параметрами left и rigth. С помощью данных параметров мы и изменяем ширину в нужные нам стороны.
  2. Во втором примере же, мы используем расположение дочернего элемента по центу родительского. И при изменении ширины дочернего элемента, браузер будет автоматически ставить наш блок в цент и будет создаваться впечатление растягивания блока в обе стороны.

setTimeout(() => { 
    document.getElementById("mySidenav").style.left = "0px"; 
  document.getElementById("mySidenav").style.right = "0px"; 
}, 2000);
.container{
  position: relative;
  width: 400px;
  height: 200px;
  background: #ffdddf;
  z-index: 1;
}
.wrapper {
  position: absolute;
  top: 10px;
  left: 100px;
  right: 100px;
  height: 25px;
  background: #000;
  z-index: 2;
  transition: 1s linear;
}
<div class="container" >
  <div class="wrapper" id="mySidenav">
    
  </div>
</div>

setTimeout(() => { 
    document.getElementById("mySidenav").style.width = "90%"; 
}, 2000);
.container{
  display: flex;
  justify-content: center;
  width: 100%;
  background: #ddffdd;
  padding: 10px 0;
}
.wrapper {
  width: 50%;
  height: 50px;
  background: #ddccdd;
  transition: 1s linear;
}
<div class="container" >
  <div class="wrapper" id="mySidenav">
    
  </div>
</div>

READ ALSO
как найти элемент в iframe?

как найти элемент в iframe?

помоги с проблемой, есть компонент в который входит iframe с видео youtubeДля этого компонента подготовил превьювер с кнопкой по нажатию на которую,...

249
Deno - Ошибка TS2339 [ERROR]: Property &#39;name&#39; does not exist on type &#39;UserSchema | null&#39;

Deno - Ошибка TS2339 [ERROR]: Property 'name' does not exist on type 'UserSchema | null'

Есть две функции javascript/typescript(Deno)Первая получает инфо по пользователю по id, а вторая удаляет пользователя по id

286
manifest.json возвращает noscript

manifest.json возвращает noscript

У меня есть сайт KinoFinderПри первом запуске (или ctrl + F5) В консоли такая ошибка:

177