【头像转圈儿】掘金个人主页鼠标悬停头像旋转特效

今天逛掘金摸鱼时突然发现,鼠标悬停在头像上是可以转的!而且他转的时候还有一个明显的加速过程。

假装此处有动图-

这就勾引起我的好奇心了,这还挺有趣的小彩蛋。于是我F12找到了它的实现方式。

首先是圆形头像,这个简单

border-radius: 50%;

然后就是旋转了

.user-info-block .avatar[data-v-27e2d11b]:hover {
    transform: rotate(666turn);
    transition-delay: 1s;
    transition-property: all;
    transition-duration: 59s;
    transition-timing-function: cubic-bezier(.34,0,.84,1);
}

仔细看过之后,才发现原来这么简单。

transform: rotate(666turn):定义了transform的2d旋转,turn表示 圈(单位) 。
transition-delay:定义了延时多长时间执行。
transition-property:指定具有过渡效果的css属性
transition-duration:定义了执行时间。
transition-timing-function:定义了执行速度。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现边框贪食蛇条转圈特效可以使用CSS动画和伪元素来实现。 与滚动特效类似,我们可以通过CSS定义一个带有边框线的矩形块,并给其添加动画效果。但是,转圈特效需要在动画过程中不断改变伪元素的位置和边框线的长度,因此我们需要使用伪元素来实现。 以下是实现代码: HTML代码: ``` <div class="snake"></div> ``` CSS代码: ``` .snake { position: relative; width: 100px; height: 100px; border: 2px solid #000; overflow: hidden; animation: snake-rotate 5s linear infinite; } .snake::before { content: ""; position: absolute; top: -2px; left: -2px; width: 0; height: calc(100% + 4px); border: 2px solid #000; animation: snake-border 5s linear infinite; } @keyframes snake-rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } @keyframes snake-border { 0% { left: -2px; width: 0; } 25% { left: -2px; width: calc(100% + 4px); } 50% { top: -2px; left: calc(100% - 2px); width: 0; height: calc(100% + 4px); } 75% { top: calc(100% - 2px); left: -2px; width: calc(100% + 4px); height: 0; } 100% { top: -2px; left: -2px; width: 0; height: calc(100% + 4px); } } ``` 解析: - .snake:定义一个矩形块,并设置其边框线样式为实线,并设置overflow为hidden,用于隐藏伪元素的超出部分。 - .snake::before:定义一个伪元素,通过设置它的边框线样式为实线,并设置width为0,用于实现边框线的转圈效果。 - keyframes:定义两个动画,其中一个通过transform属性来实现矩形块的旋转效果,另一个通过left、top、width和height属性来实现伪元素的位置和边框线长度的变化效果。 代码中的关键点是使用动画来控制伪元素的边框线长度和位置,通过变化的left、top、width和height属性来实现边框线的转圈效果。同时,通过overflow属性来隐藏伪元素的超出部分,使得边框线看起来是在矩形块内转圈
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值