首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用TailwindCSS创建动画分段控件

使用TailwindCSS创建动画分段控件
EN

Stack Overflow用户
提问于 2021-01-13 09:52:56
回答 1查看 255关注 0票数 0

我主要是一个后端开发人员,所以我对前端的东西没有太多经验。我正在使用React和Tailwind CSS来创建一个页面,并且我在页面上有这个分段控件。

目前,它工作得很好,白色背景和阴影在MonthlyYearly之间静态变化。然而,我想让它动画/有一个过渡,以便白色背景/阴影从每月滑动到每年,反之亦然。我以前从来没有做过前端过渡/动画,所以我真的不确定该怎么做,特别是用Tailwind CSS。

以下是当前分段控件的代码:

代码语言:javascript
复制
function makeRecurrenceIntervalButtons(
  currentInterval: RecurringPriceInterval,
  setInterval: (interval: RecurringPriceInterval) => void,
) {
  return ['month', 'year'].map((interval: RecurringPriceInterval) => {
    const className = currentInterval === interval
      ? `relative w-1/2 bg-white border-gray-200 rounded-md shadow-sm py-2 text-sm font-medium text-gray-700 whitespace-nowrap focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:z-10 sm:w-auto sm:px-8`
      : `ml-0.5 relative w-1/2 border border-transparent rounded-md py-2 text-sm font-medium text-gray-700 whitespace-nowrap focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:z-10 sm:w-auto sm:px-8`;

    const title = interval === 'month' ? 'Monthly' : 'Yearly';

    return (
      <button
        key={interval}
        onClick={() => setInterval(interval)}
        type="button"
        className={className}
      >
        {title}
      </button>
    );
  });
}

我仔细查看了this页面,但根本不确定如何正确地应用它。如有任何帮助,将不胜感激,谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-01-13 20:39:59

首先,您需要添加transform类-否则转换将不起作用。接下来有几个类来控制你的转换时间- durationtiming function最后,在第一种情况下,你应该添加translate-x-0,当它是Yearly translate-x-full时-它应该在它自己的全宽度(而不是父元素)上沿正x轴方向移动按钮。

因此,添加以下类,例如:

Monthly - transform duration-700 ease-in-out translate-x-0

年度- transform duration-700 ease-in-out translate-x-full

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65694602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档