/* pages/timeline/timeline.wxss */ @import '../../styles/common.wxss'; page { background: linear-gradient(180deg, #F4E2E3 0%, #FAF5EE 55%, #FAF5EE 100%); height: 100vh; overflow: hidden; } scroll-view.page-bg { height: 100vh; overflow-y: scroll; -webkit-overflow-scrolling: touch; } .container { padding: 16rpx 24rpx 300rpx; } .tl-scroll { height: 100vh; } /* ===== 列表 ===== */ .tl-list { display: flex; flex-direction: column; gap: 24rpx; } /* ===== 卡片(与日记卡片等宽)===== */ .tl-item { width: 100%; } .tl-card { background: #fff; border-radius: 24rpx; padding: 32rpx; box-shadow: 0 4rpx 20rpx rgba(0,0,0,0.04); width: 100%; box-sizing: border-box; border: 2rpx solid transparent; } .tl-card-countdown { background: linear-gradient(135deg, #F5F7FF, #EEF2FF); border-color: #D6E0FF; } /* ===== 用户信息 + 日期并行 ===== */ .tl-creator { display: flex; align-items: flex-start; gap: 12rpx; } .tl-item.left .tl-creator { justify-content: flex-start; } .tl-item.right .tl-creator { justify-content: flex-start; flex-direction: row-reverse; } .tl-avatar { width: 72rpx; height: 72rpx; border-radius: 50%; flex-shrink: 0; align-self: center; } .tl-avatar-placeholder { width: 72rpx; height: 72rpx; border-radius: 50%; flex-shrink: 0; align-self: center; background: linear-gradient(135deg, #F4E2E3, #F0E6FF); display: flex; align-items: center; justify-content: center; font-size: 22rpx; font-weight: 700; color: #FF6B81; } .tl-name { font-size: 28rpx; color: #333; font-weight: 600; flex-shrink: 0; } .tl-date { font-size: 22rpx; color: #999; white-space: nowrap; } .tl-date-tag { font-size: 22rpx; white-space: nowrap; margin-right: 6rpx; } .tl-date-tag-anniversary { color: #FF6B81; } .tl-date-tag-countdown { color: #6B8CFF; } .tl-location { font-size: 22rpx; color: #999; } .tl-note { font-size: 24rpx; color: #888; line-height: 1.5; } /* ===== 内容(与用户信息反方向)===== */ .tl-card-head { display: flex; margin-top: 6rpx; } .tl-card-head:first-of-type { margin-top: 14rpx; padding-top: 16rpx; border-top: 1rpx solid #f0f0f0; } .tl-item.left .tl-card-head { justify-content: flex-end; } .tl-item.right .tl-card-head { justify-content: flex-start; } .tl-title { font-size: 30rpx; font-weight: 700; color: #333; } /* ===== 已过去天数 ===== */ .tl-days-wrap { display: flex; margin-top: 16rpx; padding-top: 14rpx; border-top: 1rpx dashed #ffe0e5; } .tl-item.left .tl-days-wrap { justify-content: flex-end; } .tl-item.right .tl-days-wrap { justify-content: flex-start; } .tl-days { display: inline-block; font-size: 22rpx; color: #FF6B81; background: linear-gradient(135deg, #FFF0F5, #F4E2E3); padding: 6rpx 20rpx; border-radius: 20rpx; font-weight: 500; } .tl-days-countdown { color: #6B8CFF; background: linear-gradient(135deg, #EEF0FF, #E4ECFF); } .tl-repeat { display: inline-block; font-size: 20rpx; color: #999; background: #f5f5f5; padding: 4rpx 16rpx; border-radius: 16rpx; margin-right: 10rpx; font-weight: 400; } /* ===== 列表背景图 ===== */ .tl-item { position: relative; overflow: hidden; } .tl-bg-wrap { position: absolute; top: 0; left: 0; right: 0; bottom: 0; border-radius: 24rpx; overflow: hidden; } .tl-bg { width: 100%; height: 100%; } .tl-bg-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.55); } .tl-card-has-bg { background: transparent !important; border-color: rgba(255,255,255,0.3) !important; position: relative; z-index: 1; color: #fff; } .tl-card-has-bg .tl-title, .tl-card-has-bg .tl-name, .tl-card-has-bg .tl-note, .tl-card-has-bg .tl-location, .tl-card-has-bg .tl-date { color: #fff !important; } .tl-card-has-bg .tl-repeat { background: rgba(255,255,255,0.2); color: rgba(255,255,255,0.85); } .tl-card-has-bg .tl-days { background: rgba(255,255,255,0.2); color: #fff !important; } .tl-card-has-bg .tl-card-head:first-of-type { border-top: none; } .tl-card-has-bg .tl-days-wrap { border-top: none; } @import '../../styles/design.wxss'; @import '../../styles/journal.wxss'; .tl-card { background:#FFFDF8; border:1rpx solid #E9DDD0; border-radius:16rpx; box-shadow:none; }.tl-card-countdown { background:#FFFDF8; border-color:#D9BBB0; }.tl-creator { flex-wrap:wrap; align-items:center; }.tl-item.right .tl-creator { flex-direction:row; }.tl-name { max-width:240rpx; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }.tl-card-head,.tl-days-wrap { justify-content:flex-start!important; }.tl-title { overflow-wrap:break-word; }.tl-days-countdown { color:#B74768; background:#F4E2E3; }