Css和JS如何实现下划线动效

  介绍

小编给大家分享一下Css和JS如何实现下划线动效,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!

实现的主要效果是利用伪类标签,以及盘旋,利用transfromm trition实现动画效果

x轴由内向外展开

 Css和JS如何实现下划线动效

利用贝塞尔曲线利用横线的动画实现,具体代码如下:

ul  {   ,,显示:flex;   ,,填充:0;   保证金才能:0;   list-style-type才能:没有;   }   ul: hover 李:没有(徘徊),a  {   ,,不透明度:0.2;   }   ul  li  {   位置:,才能相对;   ,,填充:30 px  25 px  30 px  25 px;   ,,光标:指针;   }   ul 李::after  {   位置:才能,绝对;   内容:,“才能”;   ,,:100%;   ,,左:0;   ,,宽度:100%;   ,,高度:2 px;   ,,背景:# 3498分贝;   变换才能:scaleX (0);   ,,转型:0.4 s  cubic-bezier (0.165, 0.84, 0.44,, 1);   }   ul 李:徘徊:之后,,ul  li.active: after  {   变换才能:scaleX (1);   }

左右横移下划线动画特效

 Css和JS如何实现下划线动效

主要利用JS判断鼠标移开时的位置,对动画效果的进行左右移入移出显示
,

JS代码如下:

document.querySelectorAll(& # 39;一个# 39;).forEach (elem =祝辞,{      ,elem.onmouseenter =elem.onmouseleave 才能=,e =祝辞,{      ,,,const  tolerance =, 5;      ,,,const  left =, 0;   ,,,const  right =, elem.clientWidth;      ,,,let  x =, e.pageX 作用;elem.offsetLeft;      ,,,if  (x 作用;tolerance  & lt;,左),x =,离开;   ,,,if (时间+ x  tolerance 祝辞,右),x =,正确的;      ,,,elem.style.setProperty (& # 39;——x # 39;,,“$ {x} px”);      ,,};      });

css利用伪类标签进行动画效果的动画实现
css代码如下:

a  {   位置:,才能相对;   ,,粗细:600;   文字修饰才能:没有;   颜色:,才能rgba (0, 0, 0,, 0.4);   过渡:才能,color  .3s 缓解;   }   答::after  {   ,,——规模:0;   ,,内容:& # 39;& # 39;;   位置:才能,绝对;   ,,左:0;   ,,右:0;   ,,:100%;   ,,身高:3 px;   背景:才能,# 4 c81c9;   ,,-webkit-transform: scaleX (var(规模));   ,,,,,,,,,变换:,scaleX (var(规模));   ,,-webkit-transform-origin: var (- x), 50%;   ,,,,,,,,,transform-origin:, var (- x), 50%;   过渡:才能,-webkit-transform  0.3 s  cubic-bezier (0.535, 0.05, 0.355,, 1);   过渡:才能,transform  0.3 s  cubic-bezier (0.535, 0.05, 0.355,, 1);   过渡:才能,transform  0.3 s  cubic-bezier (0.535, 0.05, 0.355,, 1),, -webkit-transform  0.3 s  cubic-bezier (0.535, 0.05, 0.355,, 1);   }   答:hover  {   ,,颜色:# 4 c81c9;   }   徘徊::after  {   ,,——规模:1;   }

看完了这篇文章,相信你对“Css和JS如何实现下划线动效”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

Css和JS如何实现下划线动效