feat: ui update

This commit is contained in:
2026-09-15 16:01:59 +08:00
parent 1a11816839
commit 26c392d612
89 changed files with 10377 additions and 4861 deletions
+97 -158
View File
@@ -1,3 +1,4 @@
/** 穿搭:下划线分段 + 无缝拼图卡 + 悬浮双按钮条 **/
.page-flex {
height: 100vh;
display: flex;
@@ -10,199 +11,137 @@
height: 0;
}
.topbar {
background: #fff;
padding: 20rpx 32rpx;
/* 分段条:吸顶玻璃 */
.segbar {
position: sticky;
top: 0;
z-index: 20;
margin-top: 36rpx;
background: var(--glass);
-webkit-backdrop-filter: saturate(180%) blur(20px);
backdrop-filter: saturate(180%) blur(20px);
border-bottom: 1rpx solid var(--hairline);
}
.segment {
.of-list {
padding: 40rpx var(--pad) 0;
display: flex;
background: #F2F2F7;
border-radius: 20rpx;
padding: 6rpx;
flex-direction: column;
gap: 56rpx;
}
.segment-item {
flex: 1;
height: 64rpx;
line-height: 64rpx;
text-align: center;
font-size: 28rpx;
color: #3C3C43;
border-radius: 16rpx;
}
.segment-item.active {
background: #fff;
color: #007AFF;
font-weight: 600;
}
.entry-row {
display: flex;
gap: 20rpx;
padding: 24rpx 32rpx;
}
.entry-btn {
flex: 1;
height: 72rpx;
border-radius: 36rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 26rpx;
font-weight: 500;
}
.entry-outline {
border: 1rpx solid #007AFF;
color: #007AFF;
background: #fff;
}
.entry-primary {
background: #007AFF;
color: #fff;
}
.list {
padding: 0 32rpx;
}
.sk-card {
height: 360rpx;
border-radius: 32rpx;
margin-bottom: 24rpx;
}
.outfit-card {
margin-bottom: 24rpx;
padding: 24rpx;
}
.cover {
height: 280rpx;
background: #F8F8FA;
border-radius: 24rpx;
display: flex;
align-items: center;
justify-content: center;
color: #C7C7CC;
position: relative;
overflow: hidden;
}
.cover .icon {
width: 96rpx;
height: 96rpx;
}
.cover-item {
position: absolute;
width: 150rpx;
height: 190rpx;
background: #fff;
border: 1rpx solid #E5E5EA;
border-radius: 16rpx;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}
.cover-0 { left: 16rpx; top: 40rpx; transform: rotate(-6deg); }
.cover-1 { left: 140rpx; top: 82rpx; transform: rotate(3deg); }
.cover-2 { left: 268rpx; top: 32rpx; transform: rotate(5deg); }
.cover-3 { left: 392rpx; top: 84rpx; transform: rotate(-3deg); }
.cover-4 { left: 480rpx; top: 40rpx; transform: rotate(6deg); }
.cover-img {
.of-card {
display: block;
width: 100%;
height: 100%;
transition: transform .2s var(--ease);
}
.cover-ph {
width: 72rpx;
height: 72rpx;
color: #C7C7CC;
.of-card:active {
transform: scale(.985);
}
.cover-count {
position: absolute;
top: 20rpx;
right: 20rpx;
font-size: 22rpx;
color: #007AFF;
background: rgba(0, 122, 255, 0.1);
padding: 4rpx 20rpx;
border-radius: 20rpx;
.of-skel {
padding: 40rpx var(--pad) 0;
display: flex;
flex-direction: column;
gap: 56rpx;
}
.card-body {
margin-top: 20rpx;
.of-skel-item {
display: flex;
flex-direction: column;
gap: 24rpx;
}
.title-row {
.sk-cover {
aspect-ratio: 4 / 3;
}
/* 作者行(仅社区分段) */
.of-author {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16rpx;
margin-bottom: 20rpx;
}
.title {
font-size: 32rpx;
font-weight: 600;
color: #000;
.of-av {
width: 48rpx;
height: 48rpx;
border-radius: 50%;
background: var(--paper-3);
color: var(--ink-3);
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
flex-shrink: 0;
}
.of-av .icon {
width: 26rpx;
height: 26rpx;
}
.of-aname {
font-size: 25rpx;
letter-spacing: .01em;
color: var(--ink);
}
.of-atime {
margin-left: auto;
font-size: 22rpx;
color: var(--ink-3);
}
.of-trow {
display: flex;
align-items: center;
gap: 18rpx;
margin-top: 24rpx;
}
.of-title {
font-family: var(--serif);
font-size: 34rpx;
font-weight: 500;
line-height: 1.35;
flex: 1;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
margin-right: 16rpx;
}
.desc {
font-size: 26rpx;
color: #8E8E93;
margin-top: 12rpx;
.of-desc {
margin-top: 14rpx;
font-size: 25rpx;
line-height: 1.62;
color: var(--ink-2);
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.meta-row {
.of-meta {
display: flex;
align-items: center;
margin-top: 16rpx;
gap: 22rpx;
margin-top: 24rpx;
}
.meta {
font-size: 22rpx;
color: #8E8E93;
margin-left: 12rpx;
}
.spacer {
flex: 1;
}
.meta-icon {
display: flex;
.of-m {
display: inline-flex;
align-items: center;
gap: 8rpx;
font-size: 22rpx;
color: #8E8E93;
color: var(--ink-3);
font-variant-numeric: tabular-nums;
}
.heart {
width: 36rpx;
height: 36rpx;
color: #C7C7CC;
margin-right: 8rpx;
}
.no-more {
text-align: center;
font-size: 24rpx;
color: #C7C7CC;
padding: 24rpx 0 40rpx;
.of-m .icon {
width: 26rpx;
height: 26rpx;
}