You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
.forum-page { min-height: 100vh; padding-bottom: 40rpx; } /* 顶部栏 */ .header { display: flex; justify-content: space-between; align-items: center; padding: 30rpx 30rpx 20rpx; background-color: #fff; border-bottom: 1rpx solid #eee; position: sticky; top: 0; z-index: 10; } .title { font-size: 36rpx; font-weight: bold; color: #333; } .add-btn { background-color: #007AFF; color: white; font-size: 26rpx; padding: 10rpx 20rpx; line-height: normal; border-radius: 30rpx; margin: 0; } .add-btn:after { border: none; } /* 帖子项 */ .post-list { padding: 20rpx 30rpx; } .post-item { background-color: white; border-radius: 16rpx; padding: 30rpx; margin-bottom: 24rpx; box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.05); } .post-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 24rpx; } .user-info { display: flex; align-items: center; } .avatar { width: 70rpx; height: 70rpx; border-radius: 50%; margin-right: 20rpx; } .user-detail { display: flex; flex-direction: column; } .username { font-size: 30rpx; font-weight: bold; color: #333; margin-bottom: 6rpx; } .post-time { font-size: 24rpx; color: #999; }
/* 帖子内容 */ .post-content { margin-bottom: 24rpx; } .post-title { font-size: 34rpx; font-weight: bold; color: #333; margin-bottom: 16rpx; line-height: 1.4; } .post-desc { font-size: 28rpx; color: #555; line-height: 1.6; margin-bottom: 20rpx; }
/* 回复列表 */ .reply-list { margin-top: 24rpx; } .reply-title { font-size: 26rpx; color: #666; margin-bottom: 20rpx; font-weight: bold; } .reply-item { padding: 24rpx 0; border-bottom: 1rpx solid #f8f8f8; } .reply-item:last-child { border-bottom: none; } .reply-user { display: flex; align-items: center; margin-bottom: 16rpx; } .reply-avatar { width: 56rpx; height: 56rpx; border-radius: 50%; margin-right: 16rpx; } .reply-user-info { display: flex; flex-direction: column; } .reply-username { font-size: 26rpx; color: #333; margin-bottom: 4rpx; } .reply-time { font-size: 22rpx; color: #999; } .reply-content { font-size: 28rpx; color: #444; line-height: 1.5; margin-left: 72rpx; } .view-more-replies { font-size: 26rpx; color: #007AFF; text-align: center; padding: 20rpx 0; margin-top: 10rpx; } /* 回复输入区域 */ .reply-input-container { display: flex; align-items: center; margin-top: 20rpx; padding-top: 20rpx; border-top: 1rpx solid #f0f0f0; } .reply-input { flex: 1; background-color: #f8f8f8; border-radius: 30rpx; padding: 16rpx 24rpx; font-size: 28rpx; margin-right: 16rpx; } .send-reply-btn { background-color: #007AFF; color: white; font-size: 26rpx; padding: 12rpx 24rpx; line-height: normal; border-radius: 30rpx; margin: 0; } .send-reply-btn:after { border: none; } /* 空状态 */ .empty-state { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 100rpx 30rpx; text-align: center; } .empty-image { width: 300rpx; height: 300rpx; margin-bottom: 40rpx; opacity: 0.6; } .empty-text { font-size: 30rpx; color: #999; margin-bottom: 40rpx; } .empty-btn { background-color: #007AFF; color: white; font-size: 30rpx; padding: 20rpx 40rpx; line-height: normal; border-radius: 40rpx; margin: 0; } .empty-btn:after { border: none; } /* 弹窗样式 */ .modal-overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); display: flex; align-items: center; justify-content: center; z-index: 100; } .modal-content { background-color: white; border-radius: 20rpx; width: 85%; max-height: 80vh; overflow-y: auto; padding: 40rpx; } .modal-header { font-size: 36rpx; font-weight: bold; color: #333; margin-bottom: 40rpx; text-align: center; } .form-item { margin-bottom: 40rpx; } .form-input { background-color: #f8f8f8; border-radius: 12rpx; padding: 24rpx; font-size: 28rpx; } .form-textarea { background-color: #f8f8f8; border-radius: 12rpx; padding: 24rpx; font-size: 28rpx; height: 200rpx; width: 100%; box-sizing: border-box; } .textarea-counter { font-size: 24rpx; color: #999; text-align: right; margin-top: 10rpx; } .selected-tags { display: flex; flex-wrap: wrap; } .selected-tag { font-size: 24rpx; color: #007AFF; background-color: #e6f2ff; padding: 8rpx 20rpx; border-radius: 20rpx; margin-right: 12rpx; margin-bottom: 12rpx; display: flex; align-items: center; } .remove-tag { font-size: 30rpx; margin-left: 8rpx; color: #999; } .modal-buttons { display: flex; justify-content: space-between; margin-top: 40rpx; } .modal-btn { flex: 1; font-size: 30rpx; border-radius: 50px; margin: 0 10rpx; }
.modal-btn::after{ border: none; } .modal-btn.cancel { background-color: #f0f0f0; color: #666; } .modal-btn.submit { background-color: #007AFF; color: white; } .modal-btn.submit[disabled] { background-color: #cccccc; color: white; } /* 加载提示 */ .loading { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 60rpx 0; color: #999; font-size: 28rpx; } .loading-icon { width: 60rpx; height: 60rpx; margin-bottom: 20rpx; animation: rotate 1s linear infinite; } @keyframes rotate { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
|