Увеличивайте объект, пока он не перейдет в css / html - PullRequest
2 голосов
/ 09 мая 2020

Я хочу увеличить круг (div), пока он не пройдет "камеру". Я пробовал перспективу, но это не сработало. По крайней мере, так, как я это использовал. Вот мой HTML:

:<html>
  <body>
    <div class="test"></div>
  </body>
</html>

Вот мой css:

.test{
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  border:2px solid coral;
  width:100px;
  height:100px;
  border-radius:50%;
}

Есть способ сделать это?

Ответы [ 3 ]

2 голосов
/ 11 мая 2020

Вот как можно обойтись без js. Но обратите внимание, настройте высоту .wraper для вашего собственного проекта.

Например, это свойство помогает удалить полосы прокрутки:

overflow: hidden;

Также важно, чтобы родительский div быть относительным положением, а дочерний div - абсолютным.

.wraper {
  position: relative;
  width: 100%;
  height: 300px;
  overflow: hidden;
}

.circle {
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  right: 50%;
  transform: translateX(50%) translateY(-50%);
  border-radius: 50%;
  border: 2px solid #000;
  animation-name: example;
  animation-duration: 15s;
  animation-fill-mode: forwards;
  animation-iteration-count: 1;
}

@keyframes example {
  0%   {width: 30px; height: 30px;}
  100% {width: 3000px; height: 3000px;}
}
<div class="wraper">
  <div class="circle">
  </div>
</div>
0 голосов
/ 09 мая 2020

попробуйте

.test:hover{
 transform: scale(1.5);
}
<div class="test"></div>
0 голосов
/ 09 мая 2020

используйте

transform: scale(1.5, 1.5);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...