hookehuyr

refactor(CheckinMap): 优化签到卡片布局与样式

重构卡片模板结构,将日期栏与进入按钮分组为底部模块;修复封面图片显示问题;统一使用flex布局优化整体排版
...@@ -18,12 +18,14 @@ ...@@ -18,12 +18,14 @@
18 <!-- 卡片内容 --> 18 <!-- 卡片内容 -->
19 <view class="card-content"> 19 <view class="card-content">
20 <text class="card-title">{{ item.title }}</text> 20 <text class="card-title">{{ item.title }}</text>
21 - <view class="card-time-wrapper"> 21 + <view class="card-bottom-module">
22 - <text class="card-time-label">活动日期</text> 22 + <view class="card-time-wrapper">
23 - <text class="card-time">{{ item.timeRange }}</text> 23 + <text class="card-time-label">活动日期</text>
24 - </view> 24 + <text class="card-time">{{ item.timeRange }}</text>
25 - <view class="enter-btn" @tap.stop="handleEnter(item)"> 25 + </view>
26 - <text class="enter-btn-text">立即进入</text> 26 + <view class="enter-btn" @tap.stop="handleEnter(item)">
27 + <text class="enter-btn-text">立即进入</text>
28 + </view>
27 </view> 29 </view>
28 </view> 30 </view>
29 </view> 31 </view>
...@@ -178,6 +180,8 @@ useLoad(() => { ...@@ -178,6 +180,8 @@ useLoad(() => {
178 } 180 }
179 181
180 .map-card { 182 .map-card {
183 + display: flex;
184 + flex-direction: column;
181 background-color: #ffffff; 185 background-color: #ffffff;
182 border-radius: 16px; 186 border-radius: 16px;
183 overflow: hidden; 187 overflow: hidden;
...@@ -197,7 +201,9 @@ useLoad(() => { ...@@ -197,7 +201,9 @@ useLoad(() => {
197 201
198 .cover-image { 202 .cover-image {
199 width: 100%; 203 width: 100%;
200 - /* 高度由 mode="widthFix" 自动控制,保持宽高比 */ 204 + height: 100%;
205 + display: block;
206 + object-fit: cover;
201 } 207 }
202 208
203 .card-content { 209 .card-content {
...@@ -205,6 +211,7 @@ useLoad(() => { ...@@ -205,6 +211,7 @@ useLoad(() => {
205 display: flex; 211 display: flex;
206 flex-direction: column; 212 flex-direction: column;
207 gap: 12px; 213 gap: 12px;
214 + flex: 1;
208 } 215 }
209 216
210 .card-title { 217 .card-title {
...@@ -218,6 +225,13 @@ useLoad(() => { ...@@ -218,6 +225,13 @@ useLoad(() => {
218 -webkit-box-orient: vertical; 225 -webkit-box-orient: vertical;
219 } 226 }
220 227
228 +.card-bottom-module {
229 + margin-top: auto;
230 + display: flex;
231 + flex-direction: column;
232 + gap: 12px;
233 +}
234 +
221 .card-time-wrapper { 235 .card-time-wrapper {
222 display: flex; 236 display: flex;
223 flex-direction: column; 237 flex-direction: column;
......