Lzh on GitHub

transition-property

用于控制哪些 CSS 属性进行过渡的工具类。

快速参考

类名样式
transitiontransition-property: color, background-color, border-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
transition-timing-function: var(--default-transition-timing-function); /* cubic-bezier(0.4, 0, 0.2, 1) */
transition-duration: var(--default-transition-duration); /* 150ms */
transition-alltransition-property: all;
transition-timing-function: var(--default-transition-timing-function); /* cubic-bezier(0.4, 0, 0.2, 1) */
transition-duration: var(--default-transition-duration); /* 150ms */
transition-colorstransition-property: color, background-color, border-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
transition-timing-function: var(--default-transition-timing-function); /* cubic-bezier(0.4, 0, 0.2, 1) */
transition-duration: var(--default-transition-duration); /* 150ms */
transition-opacitytransition-property: opacity;
transition-timing-function: var(--default-transition-timing-function); /* cubic-bezier(0.4, 0, 0.2, 1) */
transition-duration: var(--default-transition-duration); /* 150ms */
transition-shadowtransition-property: box-shadow;
transition-timing-function: var(--default-transition-timing-function); /* cubic-bezier(0.4, 0, 0.2, 1) */
transition-duration: var(--default-transition-duration); /* 150ms */
transition-transformtransition-property: transform, translate, scale, rotate;
transition-timing-function: var(--default-transition-timing-function); /* cubic-bezier(0.4, 0, 0.2, 1) */
transition-duration: var(--default-transition-duration); /* 150ms */
transition-nonetransition-property: none;
transition-(<custom-property>)transition-property: var(<custom-property>);
transition-timing-function: var(--default-transition-timing-function); /* cubic-bezier(0.4, 0, 0.2, 1) */
transition-duration: var(--default-transition-duration); /* 150ms */
transition-[<value>]transition-property: <value>;
transition-timing-function: var(--default-transition-timing-function); /* cubic-bezier(0.4, 0, 0.2, 1) */
transition-duration: var(--default-transition-duration); /* 150ms */

示例

基本示例

使用像 transitiontransition-colors 这样的工具类来指定属性在改变时应如何过渡:

将鼠标悬停在按钮上以查看预期行为

<button class="bg-blue-500 transition delay-150 duration-300 ease-in-out hover:-translate-y-1 hover:scale-110 hover:bg-indigo-500 ...">
  Save Changes
</button>

支持减少运动

对于用户偏好减少运动的情况,你可以使用 motion-safemotion-reduce 变体有条件地应用动画和过渡:

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

使用自定义值

使用 transition-[<value>] 语法来基于完全自定义的值设置过渡属性

<button class="transition-[height] ...">
  <!-- ... -->
</button>

对于 CSS 变量,你也可以使用 transition-(<custom-property>) 语法:

<button class="transition-(--my-properties) ...">
  <!-- ... -->
</button>

这只是 transition-[var(<custom-property>)] 的一个简写,它会自动为你添加 var() 函数。

响应式设计

transition-property 工具类前加上一个断点变体,例如 md:,以仅在中等屏幕尺寸及以上应用该工具类:

<button class="transition-none md:transition-all ...">
  <!-- ... -->
</button>

变体文档 中了解更多关于使用变体的信息。