@tailwind base; @tailwind components; @tailwind utilities; @layer base { :root { --background: 200 20% 98%; --btn-background: 200 10% 91%; --btn-background-hover: 200 10% 89%; --foreground: 200 50% 3%; } @media (prefers-color-scheme: dark) { :root { --background: 200 50% 3%; --btn-background: 200 10% 9%; --btn-background-hover: 200 10% 12%; --foreground: 200 20% 96%; } } } @layer base { * { @apply border-foreground/20; } } .animate-in { animation: animateIn 0.3s ease 0.15s both; } @keyframes animateIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } } .animate-slide-in-right { animation: slideInFromRight 0.5s ease-out forwards; } @keyframes slideInFromRight { 0% { transform: translateX(100%); /* 从右侧外开始 */ } 100% { transform: translateX(0); /* 完全进入视图 */ } } .component-container { @apply fixed top-1/4 right-0; transform: translateX(100%); /* 动画开始前,确保组件位于视图右侧之外 */ } /* 想给上标添加一个鼠标放上去变手型的效果 */ .ql-editor .ql-super { cursor: pointer; } @keyframes flash { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } } .vip-icon { animation: flash 1s linear infinite; } /* 动画的基本样式 */ .slide-enter { opacity: 0; transform: translateY(100%); /* 从底部滑入 */ } .slide-enter-active { opacity: 1; transform: translateY(0); transition: opacity 300ms ease-out, transform 300ms ease-out; } .slide-exit { opacity: 1; } .slide-exit-active { opacity: 0; transform: translateY(100%); /* 向底部滑出 */ transition: opacity 300ms ease-in, transform 300ms ease-in; } .paper-management-container { position: fixed; /* 或者使用 `absolute` 根据需要 */ top: 50%; /* 调整到视口的垂直中心 */ left: 50%; /* 调整到视口的水平中心 */ background-color: rgba(255, 255, 255, 0.5); transform: translate( -50%, -50% ); /* 从中心点向上和向左偏移自身的50%,确保组件居中 */ z-index: 1000; /* 确保悬浮层在其他内容之上 */ /* 可以添加其他样式来美化组件,如背景色、阴影等 */ }