介绍
小编给大家分享一下Css和JS如何实现下划线动效,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
实现的主要效果是利用伪类标签,以及盘旋,利用transfromm trition实现动画效果
x轴由内向外展开
利用贝塞尔曲线利用横线的动画实现,具体代码如下:
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); }
左右横移下划线动画特效
主要利用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如何实现下划线动效”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!