如何通过将鼠标悬停在其他元素上来激活CSS动画?

埃格罗多

我找到了一些不同的解决方案,但是它们都依赖于另一个元素内部的一个元素,而我无法解决这个问题。

我做了一些类似我的问题的JSFiddle当有人徘徊“盘旋我!” 我要“动我!” 转向“悬停我!” 并且变得可见。只要“悬停我!”,我就设法使它起作用。也随着“移动我!”而向右移动。但是我不希望那样发生,我想“悬停我!” 留在同一地点。

回顾一下,悬停“悬停我!” 我要“动我!” 变得可见并向右移动以“悬停我!” 在同一行上,而没有移动“悬停我!” 完全没有

帮助将不胜感激!

div.txtarea {
  background-color: gray;
  width: 100%;
  height: 5em;
  position: fixed;
  text-align: center;
}
a.hoverme {
  text-decoration: none;
  color: blue;
  font-size: 3em;
  display: inline-block;
}
a.moveme {
  float: left;
  text-decoration: none;
  color: blue;
  font-size: 3em;
  display: inline-block;
  opacity: 1;  /*THIS IS USUALLY 0 BUT I MADE IT 1 SO WE COULD SEE IT*/
}
a.hoverme:hover > a.moveme {
  -webkit-animation: scrollingIn 1.5s linear;
}
@-webkit-keyframes scrollingIn {
  0% {
    margin-left: 0em;
    opacity: 0;
  }
  50% {
    margin-left: 1em;
    opacity: .5;
  }
  100% {
    margin-left: 2em;
    opacity: 1;
  }
}
<div class="txtarea">
  <a class="moveme" href="#">
        move me!
      </a>
  <a class="hoverme" href="#">
        hover me!
      </a>
</div>

哈里

在CSS中,只有当用作引用的元素(在其上执行操作的元素)在需要在DOM中设置样式的元素之前,才可以基于对另一个元素的操作来影响一个元素的属性。因此,将您的a.moveme元素移动到该a.hoverme元素之后,然后使用a.hoverme:hover + a.moveme选择器应用动画。

+选择器称为相邻兄弟选择器,用于选择参考元素(在我们的示例中为a.hoverme)之后的下一个兄弟姐妹

注意:我已将的初始不透明度更改a.moveme为0,以使其仅在将a.hoverme元素悬停在其上时才可见,并且还将设置为animation-fill-modeforwards以便a.moveme只要悬停元素上,该元素在其最终位置保持可见。

我还包括了无前缀库,以便避免使用浏览器前缀,并使该代码段在所有浏览器中均可见。

div.txtarea {
  background-color: gray;
  width: 100%;
  height: 5em;
  position: fixed;
  text-align: center;
}
a.hoverme {
  float: left;
  text-decoration: none;
  color: blue;
  font-size: 3em;
  display: inline-block;
}
a.moveme {
  float: left;
  text-decoration: none;
  color: blue;
  font-size: 3em;
  display: inline-block;
  opacity: 0;
}
a.hoverme:hover + a.moveme {
  animation: scrollingIn 1.5s linear forwards;
}
@keyframes scrollingIn {
  0% {
    margin-left: 0em;
    opacity: 0;
  }
  50% {
    margin-left: 1em;
    opacity: .5;
  }
  100% {
    margin-left: 2em;
    opacity: 1;
  }
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js"></script>
<div class="txtarea">
  <a class="hoverme" href="#">
    hover me!
  </a>
  <a class="moveme" href="#">
    move me!
  </a>
</div>


对于这种特殊效果,您甚至不需要动画。也可以使用下面的代码段中的过渡来实现。transitiona.hoverme:hover + a.moveme选择器中定义属性将意味着仅在将鼠标悬停时才发生过渡,而在悬停时则不会发生过渡。悬停时,元素仅消失。我这样做是为了模仿动画产生的输出。

div.txtarea {
  background-color: gray;
  width: 100%;
  height: 5em;
  position: fixed;
  text-align: center;
}
a.hoverme {
  float: left;
  text-decoration: none;
  color: blue;
  font-size: 3em;
  display: inline-block;
}
a.moveme {
  float: left;
  text-decoration: none;
  color: blue;
  font-size: 3em;
  display: inline-block;
  opacity: 0;
}
a.hoverme:hover + a.moveme {
  margin-left: 2em;
  opacity: 1;
  transition: all 1.5s linear;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js"></script>
<div class="txtarea">
  <a class="hoverme" href="#">
    hover me!
  </a>
  <a class="moveme" href="#">
    move me!
  </a>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

通过将鼠标悬停在单独的元素上来触发CSS动画

来自分类Dev

将鼠标悬停在其他元素上时,如何在span标签内显示文本?

来自分类Dev

将鼠标悬停在其他元素上时如何删除和重新设置对输入的关注

来自分类Dev

将鼠标悬停在其他下方的元素上

来自分类Dev

通过将鼠标悬停在:: after元素上来更改图像样式

来自分类Dev

通过将鼠标悬停在另一个元素上来触发引导工具提示

来自分类Dev

将鼠标悬停在其他Div上时替换Div

来自分类Dev

在将鼠标悬停在其他文本上时更改文本的颜色吗?

来自分类Dev

将鼠标悬停在其他Div上时替换Div

来自分类Dev

将鼠标悬停在一个元素上以显示其他元素

来自分类Dev

通过将鼠标悬停在节点上来突出显示D3中的边缘

来自分类Dev

通过将鼠标悬停在文本上来更改图片

来自分类Dev

将鼠标悬停在<li>上来更改div大小

来自分类Dev

将鼠标悬停在元素上会使其动画,而只需更改其CSS属性

来自分类Dev

为什么将鼠标悬停在错误的元素上会触发我的 CSS 动画?

来自分类Dev

Safari将鼠标悬停在元素上时,导航栏会跳转,在其他浏览器上也可以

来自分类Dev

CSS:将鼠标悬停在移动设备或其他设备上

来自分类Dev

将鼠标悬停在缩略图上时,如何交换其他视频?

来自分类Dev

将鼠标悬停在标记上时,如何淡化高图中的其他yAxis?

来自分类Dev

通过CSS防止将鼠标悬停在第一个元素上

来自分类Dev

单击手机/平板电脑,将鼠标悬停在其他设备上(面向未来)

来自分类Dev

当我将鼠标悬停在其他菜单项上时,请删除课程

来自分类Dev

如何通过使用 jquery 将鼠标悬停在另一个 html 元素上来更改另一个 html 元素的可见性/不透明度?

来自分类Dev

CSS菜单将鼠标悬停在一个子元素上,并同时更改所有其他元素

来自分类Dev

CSS导航链接样式:将鼠标悬停在所选元素上时,删除其他元素的样式并删除双边框

来自分类Dev

将鼠标悬停在元素上?

来自分类Dev

如何在鼠标悬停时将图像定位在其他图像上方?

来自分类Dev

将鼠标悬停在父元素上时如何更改首字母的CSS样式?

来自分类Dev

如何使用CSS将鼠标悬停在整个列表元素(包括项目符号)上?

Related 相关文章

  1. 1

    通过将鼠标悬停在单独的元素上来触发CSS动画

  2. 2

    将鼠标悬停在其他元素上时,如何在span标签内显示文本?

  3. 3

    将鼠标悬停在其他元素上时如何删除和重新设置对输入的关注

  4. 4

    将鼠标悬停在其他下方的元素上

  5. 5

    通过将鼠标悬停在:: after元素上来更改图像样式

  6. 6

    通过将鼠标悬停在另一个元素上来触发引导工具提示

  7. 7

    将鼠标悬停在其他Div上时替换Div

  8. 8

    在将鼠标悬停在其他文本上时更改文本的颜色吗?

  9. 9

    将鼠标悬停在其他Div上时替换Div

  10. 10

    将鼠标悬停在一个元素上以显示其他元素

  11. 11

    通过将鼠标悬停在节点上来突出显示D3中的边缘

  12. 12

    通过将鼠标悬停在文本上来更改图片

  13. 13

    将鼠标悬停在<li>上来更改div大小

  14. 14

    将鼠标悬停在元素上会使其动画,而只需更改其CSS属性

  15. 15

    为什么将鼠标悬停在错误的元素上会触发我的 CSS 动画?

  16. 16

    Safari将鼠标悬停在元素上时,导航栏会跳转,在其他浏览器上也可以

  17. 17

    CSS:将鼠标悬停在移动设备或其他设备上

  18. 18

    将鼠标悬停在缩略图上时,如何交换其他视频?

  19. 19

    将鼠标悬停在标记上时,如何淡化高图中的其他yAxis?

  20. 20

    通过CSS防止将鼠标悬停在第一个元素上

  21. 21

    单击手机/平板电脑,将鼠标悬停在其他设备上(面向未来)

  22. 22

    当我将鼠标悬停在其他菜单项上时,请删除课程

  23. 23

    如何通过使用 jquery 将鼠标悬停在另一个 html 元素上来更改另一个 html 元素的可见性/不透明度?

  24. 24

    CSS菜单将鼠标悬停在一个子元素上,并同时更改所有其他元素

  25. 25

    CSS导航链接样式:将鼠标悬停在所选元素上时,删除其他元素的样式并删除双边框

  26. 26

    将鼠标悬停在元素上?

  27. 27

    如何在鼠标悬停时将图像定位在其他图像上方?

  28. 28

    将鼠标悬停在父元素上时如何更改首字母的CSS样式?

  29. 29

    如何使用CSS将鼠标悬停在整个列表元素(包括项目符号)上?

热门标签

归档