Tailwind CSS v1.6.0

Adam Wathan

就像 Tailwind CSS v1.5,但现在有了动画支持、overscroll 工具类等更多功能!

这里应该不会有任何破坏性更改,但我上次也是这么想的。如果我真的破坏了什么,第一个报告问题的人可以获得一件 Tailwind T恤。

新功能

动画支持

Tailwind CSS v1.6 添加了一个全新的 animation 核心插件,默认提供 4 个通用动画:

  • animate-spin
  • animate-ping
  • animate-pulse
  • animate-bounce
<button type="button" class="bg-indigo-600 ..." disabled>  <svg class="mr-3 h-5 w-5 animate-spin ..." viewBox="0 0 24 24">    <!-- ... -->  </svg>  处理中</button>

和往常一样,这些都是完全可以自定义的,使用 tailwind.config.js 主题中的 animationkeyframes 部分:

module.exports = {  theme: {    extend: {      animation: {        wiggle: "wiggle 1s ease-in-out infinite",      },      keyframes: {        wiggle: {          "0%, 100%": { transform: "rotate(-3deg)" },          "50%": { transform: "rotate(3deg)" },        },      },    },  },};

有关更多信息和实时演示,请阅读新的动画文档。有关设计原理的幕后细节,请查看拉取请求

新的 prefers-reduced-motion 变体

为了配合新的动画功能,我们还添加了新的 motion-safemotion-reduce 变体,允许您根据 prefers-reduced-motion 媒体特性 有条件地应用 CSS。

这些在与过渡和动画工具类结合使用时非常有用,可以为对运动敏感的用户禁用有问题的运动:

<div class="transition duration-150 ease-in-out motion-reduce:transition-none ... ..."></div>

...或者显式选择加入运动,以确保它仅显示给未选择退出的用户:

<div class="duration-150 ease-in-out motion-safe:transition ... ..."></div>

这些也可以与响应式变体和伪类变体结合使用:

<!-- 使用响应式变体 --><div class="sm:motion-reduce:translate-y-0"></div><!-- 使用伪类变体 --><div class="motion-reduce:hover:translate-y-0"></div><!-- 使用响应式和伪类变体 --><div class="sm:motion-reduce:hover:translate-y-0"></div>

这些默认情况下不会为任何工具类启用,但您可以根据需要在 tailwind.config.js 文件的 variants 部分中启用它们:

module.exports = {  // ...  variants: {    translate: ["responsive", "hover", "focus", "motion-safe", "motion-reduce"],  },};

有关更多详细信息,请查看更新的变体文档

新的 overscroll-behavior 工具类

我们还为 overscroll-behavior 属性添加了新的工具类。

您可以使用这些工具类来控制站点中的“滚动链”如何工作,并避免在到达嵌入的可滚动区域的顶部或底部时滚动整个页面。

<div class="overscroll-y-contain ...">  <!-- ... --></div>

请注意,这目前不支持 Safari,但在我看来,将其视为渐进增强并不是一个大问题,因为它的回退相当优雅。

可以在 tailwind.config.js 文件中将此插件配置为 overscrollBehavior

module.exports = {  // ...  // 禁用插件  corePlugins: {    overscrollBehavior: false,  },  // 自定义启用的变体  variants: {    overscrollBehavior: ["responsive", "hover"],  },};

无需输入文件生成 CSS

如果您从不编写自定义 CSS,并且厌倦了每次都创建这个文件...

@tailwind base;@tailwind components;@tailwind utilities;

...那么我有个好消息告诉你——如果你使用我们的 tailwindcss CLI 工具,你可以开始将这 58 个字符存入你的储蓄账户,而不是浪费在无意义的 CSS 文件上。

CLI 工具中的输入文件参数现在是可选的,因此如果您实际上不需要自定义 CSS 文件,您可以这样写:

npx tailwindcss build -o compiled.css

您的孩子们会非常感激您能多花点时间陪他们。

想讨论这篇文章吗?在 GitHub 上讨论 →

Get all of our updates directly to your inbox.
Sign up for our newsletter.