使元素产生动画的CSS动画功能类。
<button type="button" class="bg-rose-600 ..." disabled>
<svg class="animate-spin h-5 w-5 mr-3 ..." viewBox="0 0 24 24">
<!-- ... -->
</svg>
Processing
</button>
<span class="flex h-3 w-3">
<span class="animate-ping absolute inline-flex h-full w-full rounded-full bg-purple-400 opacity-75"></span>
<span class="relative inline-flex rounded-full h-3 w-3 bg-purple-500"></span>
</span>
<div class="border border-light-blue-300 shadow rounded-md p-4 max-w-sm w-full mx-auto">
<div class="animate-pulse flex space-x-4">
<div class="rounded-full bg-light-blue-400 h-12 w-12"></div>
<div class="flex-1 space-y-4 py-1">
<div class="h-4 bg-light-blue-400 rounded w-3/4"></div>
<div class="space-y-2">
<div class="h-4 bg-light-blue-400 rounded"></div>
<div class="h-4 bg-light-blue-400 rounded w-5/6"></div>
</div>
</div>
</div>
</div>
<svg class="animate-bounce w-6 h-6 ...">
<!-- ... -->
</svg>
您可以使用 motion-safe
和 motion-reduce
变体有条件地应用动画和过渡。
<button type="button" class="bg-indigo-600 ..." disabled>
<svg class="motion-safe:animate-spin h-5 w-5 mr-3 ..." viewBox="0 0 24 24">
<!-- ... -->
</svg>
Processing
</button>
这些变体默认情况下是不启用的,但是您可以在您的 tailwind.config.js
文件的 variants
部分启用它们。
// tailwind.config.js
module.exports = {
// ...
variants: {
animation: ['responsive', 'motion-safe', 'motion-reduce']
}
}
更多内容请参见悬停、焦点和其它状态文档。
要在特定的断点处更改或禁用动画,请在任何现有的动画功能中添加 {screen}:
前缀。例如,使用 md:animate-none
来应用 animate-none
功能,只适用于中等大小的屏幕及以上。
<div class="animate-spin md:animate-none ...">
<!-- ... -->
</div>
关于 Tailwind 的响应式设计功能的更多信息,请查看响应式设计文档。
动画的本质往往是高度项目化的。我们默认包含的动画最好被认为是有用的例子,我们鼓励您定制您的动画以更好地满足您的需求。
默认情况下,Tailwind 为四个不同的动画示例提供了功能,以及 animate-none
功能。您可以通过自定义主题配置的 animation
部分来改变,添加或删除这些。
// tailwind.config.js
module.exports = {
theme: {
extend: {
animation: {
+ 'spin-slow': 'spin 3s linear infinite',
}
}
}
}
要添加新的动画 @keyframes
,使用主题配置中的 keyframes
部分。
// tailwind.config.js
module.exports = {
theme: {
extend: {
keyframes: {
+ wiggle: {
+ '0%, 100%': { transform: 'rotate(-3deg)' },
+ '50%': { transform: 'rotate(3deg)' },
+ }
}
}
}
}
然后您可以在您的主题配置的 animation
部分引用这些 keyframes 的名字。
// tailwind.config.js
module.exports = {
theme: {
extend: {
animation: {
+ wiggle: 'wiggle 1s ease-in-out infinite',
}
}
}
}
在主题定制文档中了解更多关于定制默认主题的信息。
默认情况下, 针对 animation 功能类,只生成 responsive 变体。
您可以通过修改您的 tailwind.config.js
文件中的 variants
部分中的 animation
属性来控制为 animation 功能生成哪些变体。
例如,这个配置也将生成 hover and focus 变体:
// tailwind.config.js
module.exports = {
variants: {
extend: {
// ...
+ animation: ['hover', 'focus'],
}
}
}
如果您不打算在您的项目中使用 animation 功能,您可以通过在配置文件的 corePlugins
部分将 animation
property to false
in the corePlugins
section of your config file:
// tailwind.config.js
module.exports = {
corePlugins: {
// ...
+ animation: false,
}
}