提问者:小点点

使用CSS3动画进行链接缩进


我正在使用下面的代码来动画一些链接:

null

.indenting_links li a:hover {
  padding-left: 20px;
  -webkit-transition: padding-left 500ms ease-out;
  -moz-transition: padding-left 500ms ease-out;
  -o-transition: padding-left 500ms ease-out;
  transition: padding-left 500ms ease-out;
}
<ul class="indenting_links">
  <li><a href="">Link 1</a></li>
  <li><a href="">Link 2</a></li>
  <li><a href="">Link 3</a></li>
  <li><a href="">Link 4</a></li>
  <li><a href="">Link 5</a></li>
  <li><a href="">Link 6</a></li>
  <li><a href="">Link 7</a></li>
  <li><a href="">Link 8</a></li>
  <li><a href="">Link 9</a></li>
  <li><a href="">Link 10</a></li>
</ul>

null

问题:链接跳回,跳过检索动画。

代码段:CodePen

我在一个俄罗斯网站上找到了一个翻译,上面说:

如果不是将此效果添加到:hover,而是添加到元素本身,那么返回时也不会跳转

但我不知道那是什么意思。


共1个答案

匿名用户

它意味着您应该将转换设置为默认状态,而不是悬停状态:

null

.indenting_links li a:hover {
  padding-left: 20px;
}

.indenting_links li a {
  -webkit-transition: padding-left 500ms ease-out;
  -moz-transition: padding-left 500ms ease-out;
  -o-transition: padding-left 500ms ease-out;
  transition: padding-left 500ms ease-out;
}
<ul class="indenting_links">
  <li><a href="">Link 1</a></li>
  <li><a href="">Link 2</a></li>
  <li><a href="">Link 3</a></li>
  <li><a href="">Link 4</a></li>
  <li><a href="">Link 5</a></li>
  <li><a href="">Link 6</a></li>
  <li><a href="">Link 7</a></li>
  <li><a href="">Link 8</a></li>
  <li><a href="">Link 9</a></li>
  <li><a href="">Link 10</a></li>
</ul>