Files
InfoGenie/InfoGenie-frontend/public/60sapi/热搜榜单/百度电视剧榜/background.css
2025-09-16 09:14:04 +08:00

242 lines
5.7 KiB
CSS
Executable File

/* 页面主背景 */
body {
background: linear-gradient(135deg, #f9fbe7 0%, #f1f8e9 25%, #e8f5e8 50%, #dcedc8 75%, #c5e1a5 100%);
background-attachment: fixed;
position: relative;
}
/* 背景装饰元素 */
body::before {
content: '';
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image:
radial-gradient(circle at 20% 80%, rgba(139, 195, 74, 0.06) 0%, transparent 50%),
radial-gradient(circle at 80% 20%, rgba(205, 220, 57, 0.06) 0%, transparent 50%),
radial-gradient(circle at 40% 40%, rgba(212, 225, 87, 0.08) 0%, transparent 50%);
pointer-events: none;
z-index: -1;
}
/* 容器背景 */
.container {
background: rgba(255, 255, 255, 0.75);
backdrop-filter: blur(10px);
border-radius: 16px;
box-shadow: 0 8px 32px rgba(139, 195, 74, 0.12);
margin-top: 20px;
margin-bottom: 20px;
border: 1px solid rgba(241, 248, 233, 0.5);
}
/* 头部背景 */
.header {
background: linear-gradient(135deg, rgba(139, 195, 74, 0.08) 0%, rgba(205, 220, 57, 0.08) 100%);
border-radius: 16px 16px 0 0;
position: relative;
overflow: hidden;
}
.header::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background:
radial-gradient(circle at 30% 20%, rgba(139, 195, 74, 0.12) 0%, transparent 40%),
radial-gradient(circle at 70% 80%, rgba(205, 220, 57, 0.1) 0%, transparent 40%);
pointer-events: none;
}
/* 电视剧项目背景 */
.tv-item {
background: rgba(255, 255, 255, 0.92);
backdrop-filter: blur(8px);
position: relative;
overflow: hidden;
}
.tv-item::after {
content: '';
position: absolute;
top: 0;
right: 0;
width: 60px;
height: 100%;
background: linear-gradient(90deg, transparent 0%, rgba(139, 195, 74, 0.03) 100%);
pointer-events: none;
}
/* 前三名特殊背景效果 */
.tv-item:nth-child(1) {
background: linear-gradient(135deg, rgba(244, 67, 54, 0.06) 0%, rgba(255, 255, 255, 0.96) 100%);
}
.tv-item:nth-child(2) {
background: linear-gradient(135deg, rgba(255, 152, 0, 0.06) 0%, rgba(255, 255, 255, 0.96) 100%);
}
.tv-item:nth-child(3) {
background: linear-gradient(135deg, rgba(255, 193, 7, 0.06) 0%, rgba(255, 255, 255, 0.96) 100%);
}
/* 加载状态背景 */
.loading {
background: rgba(255, 255, 255, 0.85);
backdrop-filter: blur(8px);
border-radius: 12px;
margin: 20px;
border: 1px solid rgba(241, 248, 233, 0.3);
}
/* 错误信息背景 */
.error-message {
background: linear-gradient(135deg, rgba(231, 76, 60, 0.06) 0%, rgba(255, 255, 255, 0.92) 100%);
backdrop-filter: blur(8px);
border-radius: 12px;
border: 1px solid rgba(231, 76, 60, 0.1);
margin: 20px;
}
/* 底部背景 */
.footer {
background: linear-gradient(135deg, rgba(139, 195, 74, 0.04) 0%, rgba(205, 220, 57, 0.04) 100%);
border-radius: 0 0 16px 16px;
position: relative;
}
.footer::before {
content: '';
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 60px;
height: 1px;
background: linear-gradient(90deg, transparent 0%, rgba(139, 195, 74, 0.4) 50%, transparent 100%);
}
/* 封面图片背景效果 */
.item-cover {
position: relative;
overflow: hidden;
}
.item-cover::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(45deg, rgba(139, 195, 74, 0.05) 0%, transparent 50%);
pointer-events: none;
opacity: 0;
transition: opacity 0.3s ease;
}
.tv-item:hover .item-cover::before {
opacity: 1;
}
/* 响应式背景调整 */
@media (max-width: 768px) {
.container {
margin-top: 10px;
margin-bottom: 10px;
border-radius: 12px;
}
.header {
border-radius: 12px 12px 0 0;
}
.footer {
border-radius: 0 0 12px 12px;
}
body::before {
background-image:
radial-gradient(circle at 20% 80%, rgba(139, 195, 74, 0.04) 0%, transparent 40%),
radial-gradient(circle at 80% 20%, rgba(205, 220, 57, 0.04) 0%, transparent 40%);
}
}
@media (min-width: 1025px) {
.container {
margin-top: 40px;
margin-bottom: 40px;
}
body::before {
background-image:
radial-gradient(circle at 15% 85%, rgba(139, 195, 74, 0.08) 0%, transparent 60%),
radial-gradient(circle at 85% 15%, rgba(205, 220, 57, 0.08) 0%, transparent 60%),
radial-gradient(circle at 50% 50%, rgba(212, 225, 87, 0.06) 0%, transparent 70%);
}
}
/* 动画效果 */
@keyframes backgroundShift {
0% {
background-position: 0% 50%;
}
50% {
background-position: 100% 50%;
}
100% {
background-position: 0% 50%;
}
}
/* 悬浮时的背景变化 */
.tv-item:hover {
background: rgba(255, 255, 255, 0.98);
}
.tv-item:hover::after {
background: linear-gradient(90deg, transparent 0%, rgba(139, 195, 74, 0.06) 100%);
}
/* 排名背景渐变 */
.rank {
position: relative;
overflow: hidden;
}
.rank::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(45deg, rgba(255, 255, 255, 0.25) 0%, transparent 100%);
pointer-events: none;
}
/* 按钮背景效果 */
.retry-btn {
position: relative;
overflow: hidden;
}
.retry-btn::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.3) 50%, transparent 100%);
transition: left 0.5s ease;
}
.retry-btn:hover::before {
left: 100%;
}