tailwind.config.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. const { blackA, mauve, violet } = require('@radix-ui/colors');
  2. /** @type {import('tailwindcss').Config} */
  3. module.exports = {
  4. mode: 'jit',
  5. content: [
  6. './src/pages/**/*.{js,ts,jsx,tsx,mdx}',
  7. './src/components/**/*.{js,ts,jsx,tsx,mdx}',
  8. ],
  9. theme: {
  10. extend: {
  11. letterSpacing: {
  12. 'widest-cn': 'var(--tracking-widest)',
  13. },
  14. lineHeight: {
  15. 'loose-cn': 'var(--leading-loose)',
  16. },
  17. maxHeight: {
  18. '20vh': '20vh',
  19. '70vh': '70vh',
  20. // 添加其他需要的值
  21. },
  22. dropShadow: {
  23. text: '0 10px 8px rgb(0 0 0 / 0.8)',
  24. mobile: '0 2px 2px rgb(255 255 255 / 0.8)',
  25. },
  26. backgroundImage: {
  27. 'gradient-radial': 'radial-gradient(var(--tw-gradient-stops))',
  28. 'gradient-conic':
  29. 'conic-gradient(from 180deg at 50% 50%, var(--tw-gradient-stops))',
  30. 'gradient-text': 'linear-gradient(to bottom, #F0F0F0, #D6F3F3)',
  31. },
  32. backgroundColor: {
  33. 'blue-500': 'rgb(61, 146, 252)',
  34. },
  35. textColor: {
  36. 'blue-500': 'rgb(61, 146, 252)',
  37. 'gradient-text': 'linear-gradient(to right, #FF0000, #00FF00)',
  38. },
  39. colors: {
  40. ...blackA,
  41. ...mauve,
  42. ...violet,
  43. },
  44. keyframes: {
  45. slideUpAndFade: {
  46. from: { opacity: 0, transform: 'translateY(600px)' },
  47. to: { opacity: 1, transform: 'translateY(0)' },
  48. },
  49. slideRightAndFade: {
  50. from: { opacity: 0, transform: 'translateX(-2px)' },
  51. to: { opacity: 1, transform: 'translateX(0)' },
  52. },
  53. slideDownAndFade: {
  54. from: { opacity: 0, transform: 'translateY(-200px)' },
  55. to: { opacity: 1, transform: 'translateY(0)' },
  56. },
  57. slideLeftAndFade: {
  58. from: { opacity: 0, transform: 'translateX(2px)' },
  59. to: { opacity: 1, transform: 'translateX(0)' },
  60. },
  61. slideLeftFromOut: {
  62. from: { opacity: 0, transform: 'translateX(1000px)' },
  63. to: { opacity: 1, transform: 'translateX(0)' },
  64. },
  65. hide: {
  66. from: { opacity: 1 },
  67. to: { opacity: 0 },
  68. },
  69. slideIn: {
  70. from: {
  71. transform: 'translateX(calc(100% + var(--viewport-padding)))',
  72. },
  73. to: { transform: 'translateX(0)' },
  74. },
  75. swipeOut: {
  76. from: { transform: 'translateX(var(--radix-toast-swipe-end-x))' },
  77. to: { transform: 'translateX(calc(100% + var(--viewport-padding)))' },
  78. },
  79. displayFromTransparent: {
  80. from: { opacity: 0 },
  81. to: { opacity: 1 },
  82. },
  83. },
  84. animation: {
  85. hide: 'hide 100ms ease-in',
  86. slideIn: 'slideIn 150ms cubic-bezier(0.16, 1, 0.3, 1)',
  87. swipeOut: 'swipeOut 100ms ease-out',
  88. slideUpAndFade: 'slideUpAndFade 3000ms cubic-bezier(0.16, 0.8, 0.3, 1)',
  89. slideRightAndFade:
  90. 'slideRightAndFade 400ms cubic-bezier(0.16, 1, 0.3, 1)',
  91. slideDownAndFade:
  92. 'slideDownAndFade 600ms cubic-bezier(0.16, 1, 0.3, 1)',
  93. slideLeftAndFade:
  94. 'slideLeftAndFade 400ms cubic-bezier(0.16, 1, 0.3, 1)',
  95. slideLeftFromOut:
  96. 'slideLeftFromOut 1500ms cubic-bezier(0.16, 1, 0.3, 1)',
  97. displayFromTransparent:
  98. 'displayFromTransparent 1000ms cubic-bezier(0.16, 1, 0.3, 1)',
  99. },
  100. },
  101. },
  102. plugins: [require('tailwindcss-animation-delay')],
  103. };