登录
首页 >  文章 >  前端

使用 Tailwind CSS 创建流星边框动画

来源:dev.to

时间:2024-09-04 18:21:44 438浏览 收藏

在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是文章学习者,那么本文《使用 Tailwind CSS 创建流星边框动画》就很适合你!本篇内容主要包括##content_title##,希望对大家的知识积累有所帮助,助力实战开发!

使用 Tailwind CSS 创建流星边框动画

在这篇博文中,我们将使用 tailwind css 创建一个迷人的“流星”边框动画。此效果为输入字段提供发光的动画边框,可以吸引用户的注意力 - 非常适合电子邮件注册或重要通知等号召性用语部分。

演示

在深入研究代码之前,您可以在此处查看效果的现场演示:在 tailwind playground 中查看。

概念

动画是使用 tailwind css 的实用程序类和伪元素实现的。我们将使用 tailwind 的 after 伪类来创建围绕输入字段旋转的圆锥渐变动画,给人一种流星追踪边界的错觉。

html 和 tailwind css 设置

下面是创建此效果所需的 html 结构和 tailwind css 类:

<div class="flex h-screen bg-black">
  <div class="z-10 m-auto overflow-hidden p-0.5">
    <div class="after:transparent relative h-14 w-[500px] rounded-md border border-white/50 bg-black after:absolute after:-inset-[1px] after:-z-10 after:h-full after:w-full after:animate-[spin_4s_infinite] after:bg-[conic-gradient(var(--tw-gradient-stops))] after:from-transparent after:from-40% after:via-50% after:to-blue-600 after:to-100%">
      <input type="text" placeholder="join the waitlist, enter your email.." class="h-full w-full bg-transparent px-4 text-lg text-white placeholder:text-white/40 focus:outline-none" />
    </div>
  </div>
</div>

分解代码

容器设置

  <div class="flex h-screen bg-black">
  • 我们首先创建一个 flex 容器,以 h-screen(全高)和 bg-black(黑色背景)垂直和水平居中内容。

输入字段的包装

  <div class="z-10 m-auto overflow-hidden p-0.5">
  • 输入字段被包裹在一个 div 中,该 div 具有 z-10 以确保其位于动画边框之上,m-auto 以将其在 flex 容器中居中,并溢出隐藏以将动画边框包含在其边界内。

带有动画边框的输入字段

  <div class="after:transparent relative h-14 w-[500px] rounded-md border border-white/50 bg-black ...">
  • 主输入字段设置为固定宽度 500px,高度为 14 tailwind 单位。
  • border-white/50 类添加半透明边框,而 rounded-md 则为其提供圆角。
  • bg-black 将背景颜色设置为黑色,与容器混合。

创建动画

  after:absolute after:-inset-[1px] after:-z-10 after:h-full after:w-full after:animate-[spin_4s_infinite] after:bg-[conic-gradient(var(--tw-gradient-stops))] after:from-transparent after:from-40% after:via-50% after:to-blue-600 after:to-100%">
  • after 伪元素用于创建围绕边框进行动画处理的圆锥渐变。
  • after:-inset-[1px] 稍微将渐变扩展到输入边框之外,而 after:absolute 将其绝对定位以覆盖整个输入区域。
  • after:animate-[spin_4s_infinite] 添加了一个自定义旋转动画,每 4 秒完成一次完整旋转。
  • after:bg-[conic-gradient...] 创建渐变效果。我们使用 from-transparent 和 to-blue-600 类来定义色标,从而产生模仿流星的褪色效果。

输入字段样式

  <input type="text" placeholder="Join the waitlist, enter your email.." class="h-full w-full bg-transparent px-4 text-lg text-white placeholder:text-white/40 focus:outline-none" />
  • 输入本身是透明的(背景透明)并占据其父级的整个高度和宽度。
  • text-lg 类调整文本大小,而 text-white 和 placeholder:text-white/40 确保文本和占位符在深色背景下可见。
  • 最后,focus:outline-none 删除默认的焦点轮廓以保持自定义样式。

结论

只需几行 tailwind css 和伪元素的强大功能,您就可以创建像流星边框动画这样引人注目的效果。这种效果不仅美观,而且易于实现并为您自己的项目进行定制。请随意调整颜色、时间和其他属性来满足您的设计需求!

编码愉快!

unsplash 上的封面照片由 juskteez vu 拍摄

今天关于《使用 Tailwind CSS 创建流星边框动画》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:dev.to 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>