224 lines
3.7 KiB
Plaintext
224 lines
3.7 KiB
Plaintext
/* 欢迎页容器 */
|
|
.welcome-container {
|
|
width: 100%;
|
|
height: 100vh;
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
background: linear-gradient(180deg, #1a1d3a 0%, #2d1b4e 50%, #3d2456 100%);
|
|
position: relative;
|
|
overflow: hidden;
|
|
padding-bottom: 100rpx;
|
|
}
|
|
|
|
/* 星星装饰 */
|
|
.stars {
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.star {
|
|
position: absolute;
|
|
width: 4rpx;
|
|
height: 4rpx;
|
|
background: #ffffff;
|
|
border-radius: 50%;
|
|
opacity: 0.8;
|
|
animation: twinkle 3s ease-in-out infinite;
|
|
}
|
|
|
|
.star-1 {
|
|
top: 15%;
|
|
left: 20%;
|
|
animation-delay: 0s;
|
|
}
|
|
|
|
.star-2 {
|
|
top: 25%;
|
|
right: 25%;
|
|
width: 6rpx;
|
|
height: 6rpx;
|
|
animation-delay: 0.5s;
|
|
}
|
|
|
|
.star-3 {
|
|
top: 45%;
|
|
left: 15%;
|
|
animation-delay: 1s;
|
|
}
|
|
|
|
.star-4 {
|
|
top: 60%;
|
|
right: 20%;
|
|
width: 5rpx;
|
|
height: 5rpx;
|
|
animation-delay: 1.5s;
|
|
}
|
|
|
|
.star-5 {
|
|
top: 75%;
|
|
left: 30%;
|
|
animation-delay: 2s;
|
|
}
|
|
|
|
.star-6 {
|
|
top: 85%;
|
|
right: 35%;
|
|
width: 6rpx;
|
|
height: 6rpx;
|
|
animation-delay: 2.5s;
|
|
}
|
|
|
|
@keyframes twinkle {
|
|
0%, 100% {
|
|
opacity: 0.3;
|
|
transform: scale(1);
|
|
}
|
|
50% {
|
|
opacity: 1;
|
|
transform: scale(1.2);
|
|
}
|
|
}
|
|
|
|
/* 主内容区域 */
|
|
.main-content {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
z-index: 1;
|
|
position: absolute;
|
|
top: 35%;
|
|
left: 50%;
|
|
transform: translate(-50%, -50%);
|
|
animation: fadeInUp 1s ease-out;
|
|
}
|
|
|
|
@keyframes fadeInUp {
|
|
from {
|
|
opacity: 0;
|
|
transform: translate(-50%, -50%) translateY(30rpx);
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
transform: translate(-50%, -50%) translateY(0);
|
|
}
|
|
}
|
|
|
|
/* 书本图标 - 单一整体样式 */
|
|
.book-icon-single {
|
|
width: 140rpx;
|
|
height: 110rpx;
|
|
position: relative;
|
|
margin-bottom: 60rpx;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
|
|
.book-page-left,
|
|
.book-page-right {
|
|
width: 60rpx;
|
|
height: 90rpx;
|
|
background: #ffffff;
|
|
position: absolute;
|
|
border-radius: 6rpx;
|
|
}
|
|
|
|
.book-page-left {
|
|
left: 8rpx;
|
|
transform: perspective(300rpx) rotateY(20deg);
|
|
box-shadow: 2rpx 2rpx 12rpx rgba(0, 0, 0, 0.25);
|
|
z-index: 2;
|
|
}
|
|
|
|
.book-page-right {
|
|
right: 8rpx;
|
|
transform: perspective(300rpx) rotateY(-20deg);
|
|
box-shadow: -2rpx 2rpx 12rpx rgba(0, 0, 0, 0.25);
|
|
z-index: 2;
|
|
}
|
|
|
|
.book-spine {
|
|
width: 10rpx;
|
|
height: 90rpx;
|
|
background: #e5e5e5;
|
|
position: absolute;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
border-radius: 2rpx;
|
|
z-index: 1;
|
|
box-shadow: 0 2rpx 8rpx rgba(0, 0, 0, 0.2);
|
|
}
|
|
|
|
/* 应用标题 */
|
|
.app-title {
|
|
font-size: 88rpx;
|
|
font-weight: bold;
|
|
color: #ffffff;
|
|
margin-bottom: 24rpx;
|
|
letter-spacing: 8rpx;
|
|
text-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.3);
|
|
}
|
|
|
|
/* 应用副标题 */
|
|
.app-subtitle {
|
|
font-size: 30rpx;
|
|
color: rgba(255, 255, 255, 0.65);
|
|
letter-spacing: 2rpx;
|
|
}
|
|
|
|
/* 进入按钮 - 左下角定位 */
|
|
.enter-button {
|
|
width: 240rpx;
|
|
height: 88rpx;
|
|
background: linear-gradient(135deg, #a855f7 0%, #9333ea 100%);
|
|
border-radius: 44rpx;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
box-shadow: 0 8rpx 24rpx rgba(168, 85, 247, 0.4);
|
|
transition: all 0.3s ease;
|
|
position: fixed;
|
|
bottom: 120rpx;
|
|
left: 32rpx;
|
|
z-index: 10;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.enter-button::before {
|
|
content: '';
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background: linear-gradient(135deg, #c084fc 0%, #a855f7 100%);
|
|
opacity: 0;
|
|
transition: opacity 0.3s ease;
|
|
z-index: -1;
|
|
}
|
|
|
|
.enter-button:active {
|
|
transform: scale(0.96);
|
|
}
|
|
|
|
.enter-button:active::before {
|
|
opacity: 1;
|
|
}
|
|
|
|
.button-icon {
|
|
font-size: 32rpx;
|
|
margin-right: 12rpx;
|
|
}
|
|
|
|
.button-text {
|
|
font-size: 30rpx;
|
|
color: #ffffff;
|
|
font-weight: 500;
|
|
letter-spacing: 2rpx;
|
|
} |