/* index.wxss */ .container { padding: 0; background-color: #f5f5f5; color: #fff; min-height: 100vh; position: relative; padding-bottom: 120rpx; } /* 轮播图样式 */ .swiper-container { width: 100%; height: 500rpx; position: relative; border-bottom-left-radius: 20rpx; border-bottom-right-radius: 20rpx; overflow: hidden; margin-bottom: 20rpx; } .swiper { width: 100%; height: 100%; } .swiper-item { width: 100%; height: 100%; position: relative; border-bottom-left-radius: 20rpx; border-bottom-right-radius: 20rpx; overflow: hidden; } .slide-image { width: 100%; height: 100%; border-bottom-left-radius: 20rpx; border-bottom-right-radius: 20rpx; } .swiper-info { position: absolute; bottom: 0; left: 0; width: 100%; padding: 20rpx; background-size: 100%; border-bottom-left-radius: 20rpx; border-bottom-right-radius: 20rpx; } .swiper-title { font-size: 32rpx; font-weight: bold; color: #fff; margin-bottom: 10rpx; } .swiper-date { font-size: 24rpx; color: #ccc; } /* 最新上传标题 */ .section-title { font-size: 32rpx; font-weight: bold; padding: 30rpx 20rpx 20rpx; color: #000; } /* 最新上传列表 */ .latest-uploads { padding: 0 10rpx; } .upload-grid { display: flex; flex-wrap: wrap; justify-content: space-between; } .upload-item { width: 31%; height: 220rpx; margin-bottom: 20rpx; border-radius: 10rpx; overflow: hidden; } .upload-image { width: 100%; height: 100%; } /* 加载更多 */ .loading { text-align: center; padding: 20rpx 0; color: #ccc; display: flex; justify-content: center; align-items: center; } .weui-loading { width: 40rpx; height: 40rpx; display: inline-block; vertical-align: middle; animation: weuiLoading 1s steps(12, end) infinite; background: transparent url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxMDB2MTAwSDB6Ii8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTlFOUU5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgLTMwKSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iIzk4OTY5NyIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgzMCAxMDUuOTggNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjOUI5OTlBIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDYwIDc1Ljk4IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0EzQTFBMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCA2NSA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNBQkE5QUEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoMTIwIDU4LjY2IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0IyQjJCMiIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgxNTAgNTQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjQkFCOEI5IiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKDE4MCA1MCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDMkMwQzEiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTE1MCA0NS45OCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNDQkNCQ0IiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTEyMCA0MS4zNCA2NSkiLz48cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSIyMCIgeD0iNDYuNSIgeT0iNDAiIGZpbGw9IiNEMkQyRDIiIHJ4PSI1IiByeT0iNSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDM1IDY1KSIvPjxyZWN0IHdpZHRoPSI3IiBoZWlnaHQ9IjIwIiB4PSI0Ni41IiB5PSI0MCIgZmlsbD0iI0RBREFEQSIgcng9IjUiIHJ5PSI1IiB0cmFuc2Zvcm09InJvdGF0ZSgtNjAgMjQuMDIgNjUpIi8+PHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iMjAiIHg9IjQ2LjUiIHk9IjQwIiBmaWxsPSIjRTJFMkUyIiByeD0iNSIgcnk9IjUiIHRyYW5zZm9ybT0icm90YXRlKC0zMCAtNS45OCA2NSkiLz48L3N2Zz4=") no-repeat; background-size: 100%; } .loading-text { margin-left: 10rpx; font-size: 28rpx; } @keyframes weuiLoading { 0% { transform: rotate3d(0, 0, 1, 0deg); } 100% { transform: rotate3d(0, 0, 1, 360deg); } } /* 底部导航 */ .bottom-nav { position: fixed; bottom: 0; left: 0; width: 100%; height: 100rpx; background-color: #1a1a1a; display: flex; justify-content: space-around; align-items: center; border-top: 1px solid #333; } .nav-item { display: flex; flex-direction: column; align-items: center; justify-content: center; } .nav-icon { width: 40rpx; height: 40rpx; margin-bottom: 6rpx; } .nav-text { font-size: 20rpx; color: #999; } .nav-item.active .nav-text { color: #fff; } .title { font-size: 36rpx; font-weight: bold; margin-bottom: 20rpx; }