Уменьшение ширины div как слева, так и справа одновременно - PullRequest
2 голосов
/ 10 июля 2020

как уменьшить ширину div слева и справа одновременно, когда я наводю указатель мыши на div?

что-то вроде этого -> пример

я не знаю, почему нижний div просто уменьшен слева.

    #border-top-category {
        position: absolute;
        border-top: solid 20px rgb(234, 198, 255);
        width: 100px;
        top: 0px;
        right: 10px;
        transition: width 2s;
        }
#border-top-category:hover {
       width: 50px;
       }
          <div id="border-top-category"></div>

Ответы [ 2 ]

1 голос
/ 10 июля 2020
#border-top-category {
    position: absolute;
    border-top: solid 20px rgb(234, 198, 255);
    width: 100px;
    top: 0px;
    right: 10px;
    transition: transform 2s;
    }
    #border-top-category:hover {
   transform: scaleX(0.5);
   }

Используйте переход для преобразования оси X (scaleX (k) он сделает ось x на время k)

1 голос
/ 10 июля 2020

Вместо анимации ширины вы можете изменять масштаб элемента при наведении курсора. Установите значение по умолчанию scaleX на 1 и измените его при наведении на 0.

Ваш код CSS может выглядеть следующим образом:

    #border-top-category {
        position: absolute;
        border-top: solid 20px rgb(234, 198, 255);
        width: 100px;
        transform: scaleX(1);
        transform-origin: center;
        top: 0px;
        right: 10px;
        transition: transform 2s;
    }

    #border-top-category:hover {
        transform: scaleX(0);
    }
<div id="border-top-category"></div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...