顺风悬停动画下划线



我花了一天时间研究如何使用Tailwind CSS在链接上悬停后制作动画。这是我想要的动画我的链接看起来像视频。Youtube 样本

我试过使用:after,但没有成功。这是我的链接组件=>https://codepen.io/qqharry21/pen/xxPwqjQ

我希望能学会如何修复它,并使其像Tailwind CSS的视频一样工作,谢谢!

您可以在纯顺风中使用组max-w-{x}和transition all来实现这一点,在跨度上使用组悬停,这样当您经过链接时,它就会启动动画

<a href="#" class="group text-sky-600 transition duration-300">
Link
<span class="block max-w-0 group-hover:max-w-full transition-all duration-500 h-0.5 bg-sky-600"></span>
</a>

您可以为此进行转换:

.link-underline {
border-bottom-width: 0;
background-image: linear-gradient(transparent, transparent), linear-gradient(#fff, #fff);
background-size: 0 3px;
background-position: 0 100%;
background-repeat: no-repeat;
transition: background-size .5s ease-in-out;
}
.link-underline-black {
background-image: linear-gradient(transparent, transparent), linear-gradient(#F2C, #F2C)
}
.link-underline:hover {
background-size: 100% 3px;
background-position: 0 100%
}
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/tailwindcss/2.2.19/tailwind.min.css" integrity="sha512-wnea99uKIC3TJF7v4eKk4Y+lMz2Mklv18+r4na2Gn1abDRPPOeef95xTzdwGD9e6zXJBteMIhZ1+68QC5byJZw==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<div class="min-h-screen bg-gray-100 py-6 flex flex-col justify-center sm:py-12">
<div class="relative py-3 sm:max-w-xl sm:mx-auto">
<a href="#" class="font-display max-w-sm text-2xl font-bold leading-tight">
<span class="link link-underline link-underline-black text-black"> Link Hover Effect </span>
</a>
</div>
</div>

如果你不想仅仅为了这个功能而包含CSS文件,或者你只想在Tailwind中实现它,我在下面发布的代码片段完全基于TailwindCSS。

<a class="group text-pink-500 transition-all duration-300 ease-in-out" href="#">
<span class="bg-left-bottom bg-gradient-to-r from-pink-500 to-pink-500 bg-[length:0%_2px] bg-no-repeat group-hover:bg-[length:100%_2px] transition-all duration-500 ease-out">
This text gets 'underlined' on hover
</span>
</a>

干杯,编码快乐!

您可以使用after伪元素在一行中完成所有操作:

<section class="bg-[#0077b6] h-screen w-screen text-white flex items-center justify-center">
<a class="text-3xl relative after:bg-white after:absolute after:h-1 after:w-0 after:bottom-0 after:left-0 hover:after:w-full after:transition-all after:duration-300 cursor-pointer">Text you want to underline in just one line</a>
</section>

这是一支带有用例的钢笔:

https://codepen.io/Marcos-Riverola/pen/poQmRKV?editors=1010

最新更新