Skip to content

Transition Timing Function 过渡时间函数

控制 CSS 过渡缓动的实用工具。

ClassProperties

基本用法

控制缓动曲线

使用 ease-{timing} 实用程序来控制元素的缓动曲线。

👆 将鼠标悬停在每个按钮上,以查看预期的行为

ease-in

ease-out

ease-in-out

html
<button class="ease-in duration-300 ...">Button A</button>
<button class="ease-out duration-300 ...">Button B</button>
<button class="ease-in-out duration-300 ...">Button C</button>

有条件地应用

悬停、焦点和其他状态

Tailwind 允许您使用变体修饰符在不同状态下有条件地应用实用程序类。例如,使用 hover:ease-in 只在悬停时应用 ease-in 实用程序。

html
<div class="transition duration-150 ease-out hover:ease-in">
	<!-- ... -->
</div>

有关所有可用状态修饰符的完整列表,请查看悬停、焦点和其他状态文档。

断点和媒体查询

您还可以使用变体修饰符来针对响应式断点、深色模式、偏好减少动作等媒体查询进行定位。例如,使用 md:ease-in 仅在中等屏幕尺寸及以上应用 ease-in 实用程序。

html
<div class="transition duration-150 ease-out md:ease-in">
	<!-- ... -->
</div>

要了解更多信息,请查看有关响应式设计深色模式其他媒体查询修饰符的文档。

使用自定义值

定制您的主题

默认情况下,Tailwind 提供了四个通用的过渡时间函数实用程序。您可以通过编辑您的 tailwind.config.js 文件中的 theme.transitionTimingFunctiontheme.extend.transitionTimingFunction 来自定义这些值。

js
module.exports = {
  theme: {
    extend: {
      transitionTimingFunction: {								
        'in-expo': 'cubic-bezier(0.95, 0.05, 0.795, 0.035)',	
        'out-expo': 'cubic-bezier(0.19, 1, 0.22, 1)',			
      }															
    }
  }
}

有关自定义默认主题的更多信息,请参阅主题自定义文档。

任意值

如果您需要使用一个与主题无关的 transition-timing-function 值,可以使用方括号来根据任意值动态生成属性。

html
<p class="ease-[cubic-bezier(0.95,0.05,0.795,0.035)]">
	<!-- ... -->
</p>

有关任意值支持的更多信息,请参阅任意值文档。

Released under the MIT License.