Tailwind CSS on GitHub

过渡属性

用于控制 CSS 过渡属性的功能类。

Default class reference

Class
Properties
transition-nonetransition-property: none;
transition-alltransition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
transitiontransition-property: background-color, border-color, color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
transition-colorstransition-property: background-color, border-color, color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
transition-opacitytransition-property: opacity; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
transition-shadowtransition-property: box-shadow; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;
transition-transformtransition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms;

使用

使用 transition-{properties} 功能来指定哪些属性在变化时应该过渡。

<button class="transition duration-500 ease-in-out bg-blue-600 hover:bg-red-600 transform hover:-translate-y-1 hover:scale-110 ...">
  Hover me
</button>

Prefers-reduced-motion

您可以使用 motion-safemotion-reduce 变体有条件地应用动画和过渡。

<button class="transition transform hover:-translate-y-1 motion-reduce:transition-none motion-reduce:transform-none ...">
  Hover me
</button>

这些变体默认情况下是不启用的,但是您可以在您的 tailwind.config.js 文件的 variants 部分启用它们。

// tailwind.config.js
module.exports = {
  // ...
  variants: {
    transitionProperty: ['responsive', 'motion-safe', 'motion-reduce']
  }
}

悬停、焦点和其它状态文档中了解更多。

响应式

要改变元素在特定断点处的过渡属性,请在任何现有的过渡属性功能中添加 {screen}: 前缀。例如,使用 md:transition-colors 来应用 transition-colors 功能,只适用于中等以上的屏幕尺寸。

关于 Tailwind 的响应式设计功能的更多信息,请查看响应式设计文档。

自定义

Property values

默认情况下,Tailwind 为七个常见的属性组合提供了过渡属性功能。您可以通过定制您的 Tailwind 主题配置的 transitionProperty 部分来改变,添加或删除这些。

  // tailwind.config.js
  module.exports = {
    theme: {
      extend: {
        transitionProperty: {
+         'height': 'height',
+         'spacing': 'margin, padding',
        }
      }
    }
  }

主题定制文档中了解更多关于定制默认主题的信息。

变体

默认情况下, 针对 transition-property 功能类,只生成 responsive 变体。

您可以通过修改您的 tailwind.config.js 文件中的 variants 部分中的 transitionProperty 属性来控制为 transition-property 功能生成哪些变体。

例如,这个配置将生成 hover and focus 变体:

  // tailwind.config.js
  module.exports = {
    variants: {
      extend: {
        // ...
+       transitionProperty: ['hover', 'focus'],
      }
    }
  }

禁用

如果您不打算在您的项目中使用 transition-property 功能,您可以通过在配置文件的 corePlugins 部分将 transitionProperty property to false in the corePlugins section of your config file:

  // tailwind.config.js
  module.exports = {
    corePlugins: {
      // ...
+     transitionProperty: false,
    }
  }