Анимация при наведении курсора - PullRequest
0 голосов
/ 05 марта 2020

Я пытаюсь сделать так, чтобы H2 и текст span имели эффект отскока ближе к концу созданной мной анимации при наведении курсора. То, что я пытаюсь сделать, можно увидеть в следующем примере . Просто чтобы быть ясным в этом примере, S CSS используется. Я не использую S CSS, поэтому я не уверен на 100%, что я пытаюсь сделать, возможно с простым CSS, но я уверен, что это так, потому что именно это я и использую для своего проекта. Таким образом, код ниже показывает вам, что я смог сделать. Текст H2 и span имеют базовую c анимацию начальной и конечной точек при наведении курсора. Я хочу, чтобы в конце у него был небольшой отскок (как в связанном примере, которым я поделился), то, что я чувствую, мне нужно добавить ключевые кадры, чтобы достичь. Но я не знаю, возможно ли вообще добавить анимацию ключевого кадра при наведении, особенно если я хочу, чтобы он анимировал обратно в исходное положение при наведении мыши. Я ошибаюсь по этому поводу? Я ценю любые решения, которые вы, ребята, могли бы иметь. благодарю вас.

body {
  background-color: black;
}

.featured-list li {
  display: inline-block;
  margin-right: .8%;
}

.featured-list a {
  display: block;
}

.featured-list {
  text-align: center;
  padding: 0;
  margin: 0 auto;
}

a.feature-img img {
  width: 425px;
  border-radius: 5px;
  transition: .2s linear;
}

a.feature-img {
  text-align: center;
}


.f-cta, .f-img-content h2 {
  font-family: 'Abel',Helvetica,Arial,Lucida,sans-serif;
  font-weight: 100;
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
}

.f-img-content h2 {
  color: #fff;
  top: -60%;
  transition: .2s linear;
}

.f-cta {
  background: #fff;
  width: 50%;
  border-radius: 3px;
  padding: 7px;
  color: #000;
  top: 120%;
  font-size: 1.3em;
  transition: .2s linear;
}

.f-img-content {
  position: relative;
  text-align: center;
  overflow: hidden;
}

a.feature-img:hover img {
  opacity: .6;
}

a.feature-img:hover h2 {
  transform: translateY(1065%);
}

a.feature-img:hover span.f-cta {
  transform: translateY(-600%);
}
<ul class="featured-list">
      <li><a href="#" class="feature-img">
        <div class="f-img-content">
          <img src="https://i.imgur.com/EENJU66.gif">
          <h2>Lorem Ipsum project title</h2>
          <span class="f-cta">View Project</span>
        </div>   
      </a></li>
      <!--li><a href="#" class="feature-img">
      <img src="https://i.imgur.com/EENJU66.gif">
      </a></li>
      <li><a href="#" class="feature-img">
      <img src="https://i.imgur.com/EENJU66.gif">
      </a></li>
      <li><a href="#" class="feature-img">
      <img src="https://i.imgur.com/EENJU66.gif">
      </a></li-->
    </ul>

1 Ответ

1 голос
/ 05 марта 2020

Вам просто необходимы кубические c -безировые переходы.

Что-то вроде этого - https://easings.net/#easeInOutBack Или то же, что и в вашем примере:

transition:all .3s cubic-bezier(.3, 0, 0, 1.3);

Просто поиграй с этим:)

...