.jfcontainer { display: flex; flex-direction: column; height: 100vh; background-color: #f5f5f5; position: relative; } .custom-nav { display: flex; align-items: center; height: 90rpx; margin-bottom: 20rpx; background-color: #2E82FF; position: fixed; top: 0; left: 0; right: 0; z-index: 1000; padding: 0 20rpx; padding-top: 88rpx; } .back-icon { position: fixed; top: 115rpx; left: 30rpx; z-index: 999; width: 40rpx; height: 40rpx; } .nav-title { flex: 1; text-align: center; font-size: 34rpx; color: #fff; } .notice-list { width: 100%; height: calc(100vh - 88rpx); padding: 20rpx; padding-top: 190rpx; box-sizing: border-box; } .notice-item { position: relative; background: #fff; border-radius: 12rpx; padding: 30rpx; margin-bottom: 20rpx; display: flex; flex-direction: column; box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.05); } .notice-content { flex: 1; margin-right: 20rpx; margin-bottom: 16rpx; width: 90%; } .notice-title { font-size: 34rpx; font-weight: 90%; margin-bottom: 16rpx; color: #333; height: 96rpx; line-height: 48rpx; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } .notice-info { display: flex; justify-content: space-between; font-size: 30rpx; color: rgba(100, 108, 128, 1); background-color: rgba(250, 250, 250, 1); padding: 12rpx 16rpx; border-radius: 8rpx; margin-top: 10rpx; width: 100%; } .preview { display: flex; flex-direction: column; align-items: center; position: absolute; right: 20rpx; top: 30rpx; width: 12%; } .preview-icon { width: 50rpx; height: 50rpx; } .preview-text { font-size: 24rpx; color: #666; margin-top: 8rpx; } .replied-stamp { position: absolute; width: 220rpx; height: 220rpx; right: 70rpx; top: 50%; transform: translateY(-50%); opacity: 0.8; } .add-button { position: fixed; right: 40rpx; bottom: 40rpx; width: 200rpx; height: 200rpx; border-radius: 50%; display: flex; align-items: center; justify-content: center; } .add-button image { width: 120rpx; height: 120rpx; } .image-container { display: flex; flex-wrap: wrap; padding: 10rpx; } .preview-image { width: 220rpx; height: 220rpx; margin: 10rpx; border-radius: 8rpx; } .custom-preview { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 999; } .custom-preview-mask { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.5); } .mask-close-area { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1000; } .preview-content { position: relative; width: 100%; height: 100%; display: flex; justify-content: center; align-items: center; } swiper.preview-image { width: 100%; height: calc(100% - 400rpx); margin-top: 200rpx; } swiper-item { display: flex; align-items: center; justify-content: center; } .preview-content image.preview-image { width: 100%; height: 100%; object-fit: contain; } .preview-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 100rpx; height: 100rpx; display: flex; justify-content: center; align-items: center; background: rgba(0, 0, 0, 0.7); border-radius: 50%; z-index: 1001; } .preview-arrow.left { left: 30rpx; } .preview-arrow.right { right: 30rpx; } .arrow-icon { color: #fff; font-size: 50rpx; font-weight: bold; } .preview-counter { position: absolute; top: 200rpx; left: 40rpx; color: #fff; font-size: 32rpx; background: rgba(0, 0, 0, 0.7); padding: 12rpx 24rpx; border-radius: 30rpx; z-index: 1001; } .close-button { position: absolute; top: 200rpx; right: 40rpx; width: 70rpx; height: 70rpx; display: flex; justify-content: center; align-items: center; color: #fff; font-size: 50rpx; background-color: rgba(0, 0, 0, 0.7); border-radius: 50%; z-index: 1001; }