Tailwind CSS 自定义工具类与主题配置指南

一、自定义工具类配置

src/tailwind.css 文件中,我们可以通过 @layer utilities 指令添加自定义工具类:

css 复制代码
@tailwind base;
@tailwind components;
@tailwind utilities;

@layer utilities {

    /* 自定义工具 上下浮动效果 */
    .animate-floatY {
        animation: floatY 3s ease-in-out infinite;
    }

    @keyframes floatY {
        0% {
            transform: translateY(0px);
        }

        50% {
            transform: translateY(-20px);
        }

        100% {
            transform: translateY(0px);
        }
    }


    /* 自定义工具 左右浮动效果 */
    .animate-floatX {
        animation: floatX 3s ease-in-out infinite;
    }

    @keyframes floatX {
        0% {
            transform: translateX(0px);
        }

        50% {
            transform: translateX(-20px);
        }

        100% {
            transform: translateX(0px);
        }
    }

}

最佳实践建议

  1. 将动画相关工具类集中管理

  2. 使用语义化的类名命名

  3. 考虑添加响应式变体

  4. 为复杂动画添加注释说明

二、自定义主题配置示例

tailwind.config.js 中扩展主题:

javascript 复制代码
/** @type {import('tailwindcss').Config} */
export default {
  content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"],
  theme: {
    extend: {
      colors: {
        primary: "#165DFF",
        secondary: "#36CFC9",
        accent: "#FF7D00",
        neutral: "#86909C",
        "neutral-light": "#F2F3F5",
      },
      fontFamily: {
        inter: ["Inter", "sans-serif"],
        roboto: ["Roboto", "sans-serif"],
      },
      borderRadius: {
        "xl": "12px",
        "2xl": "16px",
        "3xl": "24px",
      },
    },
  },
  plugins: [],
};

通过以上配置,您可以构建出既保持 Tailwind CSS 高效性,又具有项目特色的样式系统。

相关推荐
Highcharts.js15 小时前
线形比赛积分增长或竞赛图|Highcharts企业图表代码示列
开发语言·前端·javascript·折线图·highcharts·竞赛图
hpysirius15 小时前
在企业搭建一套完整的AI Agent系统
前端
追逐梦想永不停15 小时前
记录一个好用的excel判断数字格式的公式
前端·chrome·excel
hpysirius15 小时前
从零构建 Web 端视频剪辑器:技术实践与思考
前端
让学习成为一种生活方式15 小时前
大肠杆菌合成扑热息痛--对乙酰氨基酚--文献精读227
开发语言·前端·javascript
李白的天不白16 小时前
请求不到百度网址的原因
前端
Gary Studio16 小时前
Selinux编写
linux·服务器·前端
网络点点滴16 小时前
NPM的包版本管理
前端·npm·node.js
光影少年16 小时前
react性能优化比较好的办法有哪些?
前端·react.js·性能优化
fix一个write十个16 小时前
从零搭建音视频通话太痛苦?这个 Vue3 CallKit 让你 5 分钟搞定 1v1 + 群聊通话
前端·vue.js·github