style: css

This commit is contained in:
菜菜酱 2025-09-12 13:56:53 +08:00
parent 2f92304257
commit a1d286f08b
5 changed files with 72 additions and 40 deletions

View File

@ -1,5 +1,5 @@
export default definePageConfig({ export default definePageConfig({
navigationBarTitleText: '历史记录', navigationBarTitleText: '我的作品',
navigationBarBackgroundColor: '#ffffff', navigationBarBackgroundColor: '#ffffff',
navigationBarTextStyle: 'black', navigationBarTextStyle: 'black',
backgroundColorTop: '#ffffff', backgroundColorTop: '#ffffff',

View File

@ -19,45 +19,42 @@
} }
.loading-state { .loading-state {
text-align: center;
padding: 120px 40px;
background: #fff; background: #fff;
border-radius: 32px; display: flex;
margin: 40px 32px; align-items: center;
box-shadow: 0 4px 16px rgb(0 0 0 / 8%); justify-content: center;
border: 1px solid #f0f0f0; height: 100vh;
} }
.loading-text { .loading-text {
font-size: 32px; font-size: 32px;
color: #666; color: #666;
font-weight: 500; font-weight: 500;
margin: 0 auto;
} }
.empty-state { .empty-state {
text-align: center; text-align: center;
padding: 120px 40px; height: 100vh;
background: #fff; display: flex;
border-radius: 32px; flex-direction: column;
margin: 40px 32px; align-items: center;
box-shadow: 0 4px 16px rgb(0 0 0 / 8%); justify-content: center;
border: 1px solid #f0f0f0; margin: 0 auto;
} }
.empty-icon { .empty-icon {
font-size: 160px; font-size: 56px;
display: block; display: block;
margin-bottom: 32px; margin-bottom: 32px;
opacity: 0.8; opacity: 0.8;
filter: drop-shadow(0 4px 8px rgb(0 0 0 / 10%));
} }
.empty-text { .empty-text {
font-size: 40px; font-size: 24px;
color: #333; color: #B9B9B9;
display: block; display: block;
margin-bottom: 16px; margin-bottom: 16px;
font-weight: 600;
} }
.empty-desc { .empty-desc {

View File

@ -134,9 +134,8 @@ export default function History() {
</View> </View>
) : records.length === 0 ? ( ) : records.length === 0 ? (
<View className="empty-state"> <View className="empty-state">
<Text className="empty-icon"></Text> <Text className="empty-icon"></Text>
<Text className="empty-text"></Text> <Text className="empty-text"></Text>
<Text className="empty-desc">{'\n'}</Text>
</View> </View>
) : ( ) : (
records.map(record => { records.map(record => {

View File

@ -69,15 +69,18 @@ const GeneratingComponent: React.FC<GeneratingComponentProps> = ({ task }) => {
<View className="placeholder-icon">🎨</View> <View className="placeholder-icon">🎨</View>
</View> </View>
)} )}
{/* 图片遮罩层 */}
<View className="progress-overlay" />
{/* 光扫描动画 */} {/* 光扫描动画 */}
<View className="scan-light" /> <View className="scan-light" />
<View className="scan-progress" >{Math.round(progress)}%</View>
</View> </View>
</View> </View>
</View> </View>
{/* 状态文本 */} {/* 状态文本 */}
<View className="status-section"> <View className="status-section">
<View className="status-title">... {Math.round(progress)}%</View> <View className="status-title">...</View>
<View className="status-subtitle"></View> <View className="status-subtitle"></View>
</View> </View>

View File

@ -108,7 +108,7 @@
justify-content: center; justify-content: center;
font-size: 28px; font-size: 28px;
font-weight: 400; font-weight: 400;
color: #1d1f22; color: #919191;
} }
/* 生成中内容区域 */ /* 生成中内容区域 */
@ -132,7 +132,7 @@
.progress-circle { .progress-circle {
width: 280px; width: 280px;
height: 280px; height: 280px;
border-radius: 20px; border-radius: 30px;
position: relative; position: relative;
display: flex; display: flex;
align-items: center; align-items: center;
@ -153,7 +153,7 @@
.progress-inner { .progress-inner {
width: 100%; width: 100%;
height: 100%; height: 100%;
border-radius: 20px; border-radius: 30px;
background: white; background: white;
display: flex; display: flex;
align-items: center; align-items: center;
@ -175,7 +175,7 @@
inset: 0; inset: 0;
width: 100%; width: 100%;
height: 100%; height: 100%;
border-radius: 20px; border-radius: 30px;
z-index: 3; z-index: 3;
} }
@ -185,7 +185,7 @@
inset: 0; inset: 0;
width: 100%; width: 100%;
height: 100%; height: 100%;
border-radius: 20px; border-radius: 30px;
background: linear-gradient(135deg, #f0f0f0 0%, #e0e0e0 100%); background: linear-gradient(135deg, #f0f0f0 0%, #e0e0e0 100%);
display: flex; display: flex;
align-items: center; align-items: center;
@ -193,11 +193,26 @@
z-index: 3; z-index: 3;
} }
/* 进度遮罩层 */
.progress-overlay {
position: absolute;
inset: 0;
border-radius: 30px;
background: linear-gradient(
135deg,
rgb(0 0 0 / 20%) 0%,
rgb(0 0 0 / 10%) 50%,
rgb(0 0 0 / 30%) 100%
);
z-index: 4;
pointer-events: none;
}
/* 光扫描动画 */ /* 光扫描动画 */
.scan-light { .scan-light {
position: absolute; position: absolute;
inset: 0; inset: 0;
border-radius: 20px; border-radius: 30px;
background: linear-gradient( background: linear-gradient(
90deg, 90deg,
transparent 0%, transparent 0%,
@ -206,10 +221,27 @@
rgb(255 255 255 / 8%) 60%, rgb(255 255 255 / 8%) 60%,
transparent 100% transparent 100%
); );
z-index: 4; z-index: 5;
animation: scan 2s ease-in-out infinite; animation: scan 2s ease-in-out infinite;
pointer-events: none; pointer-events: none;
} }
/* 进度文字 */
.scan-progress {
font-size: 56px;
color: #FFFFFF;
font-weight: 700;
z-index: 6;
/* 文字阴影增强可读性 */
text-shadow:
0 2px 4px rgb(0 0 0 / 50%),
0 0 8px rgb(0 0 0 / 30%),
0 0 16px rgb(0 0 0 / 20%);
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
pointer-events: none;
}
@keyframes scan { @keyframes scan {
0% { 0% {
@ -238,15 +270,15 @@
} }
.status-title { .status-title {
font-size: 36px; font-size: 40px;
font-weight: 500; font-weight: 500;
color: #333; color: #1D1F22;
margin-bottom: 12px; margin-bottom: 12px;
} }
.status-subtitle { .status-subtitle {
font-size: 28px; font-size: 24px;
color: #666; color: #919191;
} }
/* 生成中操作按钮 */ /* 生成中操作按钮 */
@ -257,13 +289,13 @@
.later-btn { .later-btn {
width: 320px; width: 320px;
height: 80px; height: 80px;
background: #333; background: #1D1F22;
border-radius: 40px; border-radius: 28px;
display: flex; display: flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
color: white; color: white;
font-size: 32px; font-size: 28px;
font-weight: 500; font-weight: 500;
} }
@ -273,15 +305,16 @@
} }
.tips-label { .tips-label {
font-size: 24px; font-size: 16px;
color: #999; font-weight: 500;
color: #B9B9B9;
letter-spacing: 2px; letter-spacing: 2px;
margin-bottom: 12px; margin-bottom: 12px;
} }
.tips-text { .tips-text {
font-size: 28px; font-size: 16px;
color: #666; color: #919191;
} }
/* 错误页面样式 */ /* 错误页面样式 */