tailwindcss-motion 是 RomboHQ 制作的 Tailwind CSS 插件。它是一个简单但功能强大的动画库,语法简单。
运动,没有骚动。
1.安装npm包
npm i -D tailwindcss-motion
2. 添加到 tailwind.config.js 中
// tailwind.config.js
export default {
content : [ ... ] ,
theme : {
extend : { ... } ,
} ,
plugins : [ require ( 'tailwindcss-motion' ) ] ,
} ;
或者,使用 ESM:
import tailwindcssMotion from "tailwindcss-motion" ;
/** @type {import('tailwindcss').Config} */
export default {
content : [ ... ] ,
theme : {
extend : { } ,
} ,
plugins : [ tailwindcssMotion ] ,
} ;
我们提供了一个简单的语法来为 Tailwind 项目中的任何元素设置动画。我们不定义自定义关键帧,而是提供实用程序类来内联动画每个维度。
例如,对于幻灯片和淡入淡出效果 - 您只需要motion-translate-x-in-25 motion-opacity-in-0
,或者,您可以将我们的预设之一与motion-preset-fade
一起使用
我们提供一系列预设来轻松为您的组件设置动画:
motion-preset-fade
motion-preset-slide-right
motion-preset-slide-left
motion-preset-slide-up
motion-preset-slide-down
motion-preset-focus
motion-preset-blur-right
motion-preset-blur-left
motion-preset-blur-up
motion-preset-blur-down
motion-preset-bounce
motion-preset-expand
motion-preset-shrink
motion-preset-pop
motion-preset-compress
motion-preset-shake
motion-preset-wiggle
motion-preset-confetti
motion-preset-typewriter-[number of characters]
motion-preset-flomoji
您可以使用基本动画和修改器类进一步自定义预设。
例如:
motion-preset-fade
: < div class =" motion-preset-fade motion-delay-500 " > div >
motion-preset-slide-right
的持续时间: < div class =" motion-preset-slide-right motion-duration-2000 " > div >
motion-preset-bounce
的高度: < div class =" motion-preset-bounce -motion-translate-y-in-150 " > div >
除了预设之外,您还可以通过组合这些基类来创建自己的自定义动画:
motion-opacity-in-0
motion-translate-y-in-100
-motion-translate-y-in-100
motion-scale-in-75
motion-rotate-in-180
-motion-rotate-in-90
motion-blur-in-sm
motion-grayscale-in
motion-bg-in-red-500
motion-text-in-blue-500
您可以在单个元素上组合多个动画:
">< div class =" motion-scale-in-75 motion-translate-y-in-100 motion-rotate-in-90 " > div >
对于退出动画,只需将类名称中的in
替换为out
即可。
您可以自定义任何动画的持续时间、延迟和定时功能。
motion-duration-500
motion-delay-500
motion-timing-spring-bouncy
例如:
">< div class =" motion-duration-2000 motion-rotate-in-180 motion-opacity-in-0 " > div >
这会将 2000 毫秒的持续时间应用于旋转和不透明度动画。
您可以使用斜杠/
将修饰符应用于特定属性。
例如:
">< div class =" motion-delay-500/rotate motion-rotate-in-180 motion-opacity-in-0 " > div >
这里,500ms 的延迟仅应用于旋转,而不应用于不透明度。
该插件包括自定义计时功能:
一些例子是:
motion-ease-spring-smooth
motion-ease-spring-snappy
motion-ease-spring-bouncy
motion-ease-spring-bounciest
motion-ease-bounce
motion-ease-bounce
motion-ease-in-quart
登陆页面 - https://play.tailwindcss.com/uAuVF8F1vC
聊天对话框 - https://play.tailwindcss.com/gjGqEKswjQ
低电量动态岛 - https://play.tailwindcss.com/tvYFbHtNNQ
苹果颜色样本 - https://play.tailwindcss.com/cvQ3Nk3v8j
Rombo 是一家早期公司,致力于开发工具来帮助公司构建漂亮的交互界面。我们开始为工程师、设计师和创意营销人员提供一个工具包,以便在常见工作流程中本地制作动画 - 例如 Tailwind、Figma、Webflow、Shopify 等!在我们的网站上注册更新:https://rombo.co