如何通过CSS实现鼠标上移图标旋转效果?

如何通过CSS实现鼠标上移图标旋转效果?

鼠标上移图标旋转效果在企业的项目中经常会使用到,特别是顶部导航栏,比如:

如何通过CSS实现鼠标上移图标旋转效果?

接下来就是要使用css实现鼠标上移图标旋转效果。

<!DOCTYPE html> 
<html> 
<head lang="en"> 
  <meta charset="UTF-8"> 
  <title></title> 
  <style> 
    div,img,body{ 
      margin: 0; 
      padding: 0; 
    } 
    .box{ 
      height: 150px; 
      width:300px; 
      background: #1b7b80; 
      margin: 0 auto; 
      padding: 20px; 
    } 
    .box:hover img{ 
      transform: rotate(180deg); 
      -webkit-transform: rotate(180deg); 
      -moz-transform: rotate(180deg); 
      -o-transform: rotate(180deg); 
      -ms-transform: rotate(180deg); 
    } 
    img{ 
      margin: 0 auto; 
      display: block; 
      transition: all 0.2s ease-in-out; 
      -webkit-transition: all 0.2s ease-in-out; 
      -moz-transition: all 0.2s ease-in-out; 
      -o-transition: all 0.2s ease-in-out; 
    } 
  </style> 
</head> 
<body> 
  <div class="box"> 
    <img src="img/down.png" alt=""/> 
  </div> 
</body> 
</html> 

这里放了一个盒子,盒子中放了一个图片,为了能看得更加清晰,这里放一个比较大的图片。现在要实现的效果是,鼠标移到.box的盒子上时,图标img将会做一个180度的旋转。

style中,关键是img和.box:hover img的设置,首先我们需要先给img设置transition属性,这里的属性指定了动画的方式和持续时长。然后给.box设置当鼠标上移时:hover时img的动作为旋转180度:

transform: rotate(180deg); 

下方的如-webkit-的设置主要为了兼容各厂商的浏览器而设置的。

得到的效果如下图所示:

如何通过CSS实现鼠标上移图标旋转效果?

以上所述是小编给大家介绍的CSS实现鼠标上移图标旋转效果,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对路饭网站的支持!