通知与推荐功能,css样式优化

Change-Id: I33d934bfdca88b7a8e6742be2a3c7323d28ffbcf
diff --git a/src/components/HelpDetail.css b/src/components/HelpDetail.css
index 34e1363..6a0dae8 100644
--- a/src/components/HelpDetail.css
+++ b/src/components/HelpDetail.css
@@ -1,337 +1,360 @@
-/* HelpDetail.css */

+/* HelpDetail.css - 个性化版本 */

 .help-detail-container {

-    max-width: 800px;

-    margin: 0 auto;

-    padding: 20px;

-  }

-  

-  .back-button {

-    background: none;

-    border: none;

-    color: #1890ff;

-    cursor: pointer;

-    font-size: 16px;

-    margin-bottom: 20px;

-    padding: 5px 0;

-  }

-  

-  .help-post {

-    background: #fff;

-    border-radius: 8px;

-    padding: 20px;

-    margin-bottom: 20px;

-    box-shadow: 0 1px 3px rgba(0,0,0,0.1);

-  }

-  

-  .help-post.solved {

-    border-left: 4px solid #52c41a;

-  }

-  

-  .post-header {

-    display: flex;

-    align-items: center;

-    margin-bottom: 15px;

-    position: relative;

-  }

-  

-  .post-avatar {

-    width: 40px;

-    height: 40px;

-    border-radius: 50%;

-    margin-right: 10px;

-  }

-  

-  .post-meta {

-    display: flex;

-    flex-direction: column;

-  }

-  

-  .post-author {

-    font-weight: bold;

-  }

-  

-  .post-date {

-    color: #888;

-    font-size: 14px;

-  }

-  

-  .solved-badge {

-    position: absolute;

-    right: 0;

-    top: 0;

-    background: #52c41a;

-    color: white;

-    padding: 2px 8px;

-    border-radius: 4px;

-    font-size: 12px;

-  }

-  

-  .post-title {

-    font-size: 20px;

-    margin: 0 0 15px;

-  }

-  

-  .post-content {

-    line-height: 1.6;

-    margin-bottom: 15px;

-  }

-  

-  .post-actions {

-    display: flex;

-    gap: 15px;

-  }

-  

-  .like-button, .favorite-button, .solve-button {

-    padding: 5px 15px;

-    border-radius: 4px;

-    border: 1px solid #ddd;

-    background: #f5f5f5;

-    cursor: pointer;

-  }

-  

-  .like-button.liked {

-    background: #e6f7ff;

-    border-color: #91d5ff;

-    color: #1890ff;

-  }

-  

-  .favorite-button.favorited {

-    background: #fff7e6;

-    border-color: #ffd591;

-    color: #fa8c16;

-  }

-  

-  .solve-button.solved {

-    background: #f6ffed;

-    border-color: #b7eb8f;

-    color: #52c41a;

-  }

-  

-  .comments-section {

-    background: #fff;

-    border-radius: 8px;

-    padding: 20px;

-    box-shadow: 0 1px 3px rgba(0,0,0,0.1);

-  }

-  

-  .comment-form {

-    margin-bottom: 20px;

-  }

-  

-  .comment-form textarea {

-    width: 100%;

-    padding: 10px;

-    border-radius: 4px;

-    border: 1px solid #ddd;

-    resize: vertical;

-    min-height: 80px;

-    margin-bottom: 10px;

-  }

-  

-  .image-upload {

-    margin-bottom: 10px;

-  }

-  

-  .upload-button {

-    background: #f5f5f5;

-    border: 1px dashed #d9d9d9;

-    border-radius: 4px;

-    padding: 8px 16px;

-    cursor: pointer;

-    margin-bottom: 10px;

-  }

-  

-  .image-preview {

-    display: flex;

-    flex-wrap: wrap;

-    gap: 10px;

-  }

-  

-  .preview-item {

-    position: relative;

-    width: 100px;

-    height: 100px;

-  }

-  

-  .preview-item img {

-    width: 100%;

-    height: 100%;

-    object-fit: cover;

-    border-radius: 4px;

-  }

-  

-  .remove-image {

-    position: absolute;

-    top: -8px;

-    right: -8px;

-    width: 20px;

-    height: 20px;

-    background: #ff4d4f;

-    color: white;

-    border: none;

-    border-radius: 50%;

-    cursor: pointer;

-    display: flex;

-    align-items: center;

-    justify-content: center;

-    font-size: 12px;

-  }

-  

-  .submit-button {

-    background: #1890ff;

-    color: white;

-    border: none;

-    border-radius: 4px;

-    padding: 8px 16px;

-    cursor: pointer;

-  }

-  

-  .comment-list {

-    margin-top: 20px;

-  }

-  

-  .comment-item {

-    display: flex;

-    padding: 15px 0;

-    border-bottom: 1px solid #f0f0f0;

-  }

-  

-  .comment-item:last-child {

-    border-bottom: none;

-  }

-  

-  .comment-avatar {

-    width: 40px;

-    height: 40px;

-    border-radius: 50%;

-    margin-right: 15px;

-    flex-shrink: 0;

-  }

-  

-  .comment-content {

-    flex-grow: 1;

-  }

-  

-  .comment-header {

-    display: flex;

-    justify-content: space-between;

-    margin-bottom: 8px;

-  }

-  

-  .comment-author {

-    font-weight: bold;

-  }

-  

-  .comment-date {

-    color: #888;

-    font-size: 14px;

-  }

-  

-  .comment-text {

-    line-height: 1.6;

-    margin-bottom: 8px;

-  }

-  

-  .comment-images {

-    display: flex;

-    gap: 10px;

-    margin-bottom: 10px;

-  }

-  

-  .comment-image {

-    max-width: 200px;

-    max-height: 150px;

-    border-radius: 4px;

-  }

-  

-  .comment-actions {

-    margin-top: 10px;

-  }

-  

-  .reply-form {

-    margin-top: 10px;

-    display: flex;

-    gap: 10px;

-  }

-  

-  .reply-form textarea {

-    flex-grow: 1;

-    padding: 8px;

-    border-radius: 4px;

-    border: 1px solid #ddd;

-    resize: vertical;

-    min-height: 40px;

-  }

-  

-  .submit-reply {

-    background: #f5f5f5;

-    border: 1px solid #d9d9d9;

-    border-radius: 4px;

-    padding: 0 15px;

-    cursor: pointer;

-    align-self: flex-end;

-    margin-bottom: 5px;

-  }

-  

-  .reply-list {

-    margin-top: 10px;

-    padding-left: 15px;

-    border-left: 2px solid #f0f0f0;

-  }

-  

-  .reply-item {

-    display: flex;

-    margin-top: 10px;

-  }

-  

-  .reply-avatar {

-    width: 30px;

-    height: 30px;

-    border-radius: 50%;

-    margin-right: 10px;

-  }

-  

-  .reply-content {

-    flex-grow: 1;

-  }

-  

-  .reply-header {

-    display: flex;

-    gap: 10px;

-    margin-bottom: 5px;

-  }

-  

-  .reply-author {

-    font-weight: bold;

-    font-size: 14px;

-  }

-  

-  .reply-date {

-    color: #888;

-    font-size: 12px;

-  }

-  

-  .reply-text {

-    font-size: 14px;

-    line-height: 1.5;

-  }

-

-  /* 评论项样式 */

-.comment-item {

-  display: flex;

-  margin-bottom: 20px;

-  padding: 15px;

-  background: #fff;

-  border-radius: 8px;

-  box-shadow: 0 1px 3px rgba(0,0,0,0.1);

+  max-width: 800px;

+  margin: 0 auto;

+  padding: 20px;

+  font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;

 }

 

-.comment-avatar {

-  width: 40px;

-  height: 40px;

+/* 返回按钮 - 渐变风格 */

+.back-button {

+  display: inline-flex;

+  align-items: center;

+  gap: 8px;

+  padding: 8px 16px;

+  background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);

+  color: white;

+  border: none;

+  border-radius: 6px;

+  font-weight: 600;

+  cursor: pointer;

+  transition: all 0.3s;

+  margin-bottom: 25px;

+  box-shadow: 0 2px 8px rgba(30, 60, 114, 0.2);

+}

+

+.back-button:hover {

+  transform: translateY(-2px);

+  box-shadow: 0 4px 12px rgba(30, 60, 114, 0.3);

+}

+

+.back-button::before {

+  content: "←";

+}

+

+/* 帖子卡片 - 3D悬浮效果 */

+.help-post {

+  background: white;

+  border-radius: 12px;

+  padding: 25px;

+  margin-bottom: 30px;

+  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);

+  transition: transform 0.3s, box-shadow 0.3s;

+  position: relative;

+  overflow: hidden;

+}

+

+.help-post:hover {

+  transform: translateY(-5px);

+  box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12);

+}

+

+.help-post.solved::after {

+  content: "";

+  position: absolute;

+  top: 0;

+  left: 0;

+  width: 5px;

+  height: 100%;

+  background: linear-gradient(to bottom, #52c41a, #a0d911);

+}

+

+/* 帖子头部 - 圆形头像+渐变背景 */

+.post-header {

+  display: flex;

+  align-items: center;

+  margin-bottom: 20px;

+  position: relative;

+}

+

+.post-avatar {

+  width: 50px;

+  height: 50px;

   border-radius: 50%;

   margin-right: 15px;

   object-fit: cover;

+  border: 3px solid rgba(30, 60, 114, 0.2);

+  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);

+  color: white;

+  display: flex;

+  align-items: center;

+  justify-content: center;

+  font-weight: bold;

+  font-size: 20px;

+}

+

+.post-meta {

+  flex: 1;

+}

+

+.post-author {

+  font-weight: 700;

+  color: #1e3c72;

+  font-size: 18px;

+}

+

+.post-date {

+  color: #666;

+  font-size: 14px;

+  margin-top: 3px;

+}

+

+/* 已解决徽章 - 闪光效果 */

+.solved-badge {

+  background: linear-gradient(135deg, #52c41a 0%, #a0d911 100%);

+  color: white;

+  padding: 4px 12px;

+  border-radius: 20px;

+  font-size: 14px;

+  font-weight: 600;

+  position: absolute;

+  right: 0;

+  top: 0;

+  box-shadow: 0 2px 8px rgba(82, 196, 26, 0.3);

+  animation: pulse 2s infinite;

+}

+

+@keyframes pulse {

+  0% { box-shadow: 0 0 0 0 rgba(82, 196, 26, 0.4); }

+  70% { box-shadow: 0 0 0 10px rgba(82, 196, 26, 0); }

+  100% { box-shadow: 0 0 0 0 rgba(82, 196, 26, 0); }

+}

+

+/* 删除按钮 - 危险色 */

+.delete-button {

+  position: absolute;

+  right: 0;

+  bottom: 0;

+  padding: 6px 12px;

+  background: linear-gradient(135deg, #ff5e62 0%, #ff2400 100%);

+  color: white;

+  border: none;

+  border-radius: 4px;

+  font-weight: 600;

+  cursor: pointer;

+  transition: all 0.3s;

+}

+

+.delete-button:hover {

+  transform: translateY(-2px);

+  box-shadow: 0 4px 12px rgba(255, 94, 98, 0.3);

+}

+

+/* 帖子标题 - 渐变文字 */

+.post-title {

+  font-size: 28px;

+  margin: 0 0 20px;

+  background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);

+  -webkit-background-clip: text;

+  -webkit-text-fill-color: transparent;

+  font-weight: 800;

+}

+

+/* 帖子内容 - 更好的阅读体验 */

+.post-content {

+  line-height: 1.8;

+  color: #333;

+  font-size: 16px;

+  margin-bottom: 25px;

+}

+

+.post-content p {

+  margin-bottom: 15px;

+}

+

+/* 图片容器 - 圆角+阴影 */

+.post-image-container, .comment-image-container {

+  margin: 20px 0;

+  border-radius: 8px;

+  overflow: hidden;

+  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);

+  transition: transform 0.3s;

+}

+

+.post-image-container:hover, .comment-image-container:hover {

+  transform: scale(1.02);

+}

+

+.post-image, .comment-image {

+  width: 100%;

+  height: auto;

+  max-height: 500px;

+  object-fit: contain;

+  display: block;

+}

+

+/* 帖子操作按钮 - 悬浮效果 */

+.post-actions {

+  display: flex;

+  gap: 15px;

+  margin-top: 25px;

+}

+

+.like-button, .solve-button {

+  padding: 10px 20px;

+  border: none;

+  border-radius: 6px;

+  font-weight: 600;

+  cursor: pointer;

+  transition: all 0.3s;

+  display: flex;

+  align-items: center;

+  gap: 8px;

+}

+

+.like-button {

+  background: linear-gradient(135deg, #f6f7f9 0%, #e9ebee 100%);

+  color: #666;

+}

+

+.like-button:hover {

+  background: linear-gradient(135deg, #ebedf0 0%, #d8dadf 100%);

+  transform: translateY(-2px);

+  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);

+}

+

+.like-button.liked {

+  background: linear-gradient(135deg, #e6f7ff 0%, #bae7ff 100%);

+  color: #1890ff;

+}

+

+.solve-button {

+  background: linear-gradient(135deg, #f6ffed 0%, #d9f7be 100%);

+  color: #52c41a;

+}

+

+.solve-button:hover {

+  background: linear-gradient(135deg, #e6ffd1 0%, #b7eb8f 100%);

+  transform: translateY(-2px);

+  box-shadow: 0 4px 8px rgba(82, 196, 26, 0.2);

+}

+

+.solve-button.solved {

+  background: linear-gradient(135deg, #52c41a 0%, #a0d911 100%);

+  color: white;

+}

+

+/* 评论区域 */

+.comments-section {

+  background: white;

+  border-radius: 12px;

+  padding: 25px;

+  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);

+}

+

+.comments-section h2 {

+  font-size: 22px;

+  color: #1e3c72;

+  margin-bottom: 20px;

+  padding-bottom: 10px;

+  border-bottom: 2px solid #f0f2f5;

+}

+

+/* 评论表单 - 现代设计 */

+.comment-form {

+  margin-bottom: 30px;

+}

+

+.comment-form textarea {

+  width: 100%;

+  padding: 15px;

+  border: 2px solid #f0f2f5;

+  border-radius: 8px;

+  resize: vertical;

+  min-height: 100px;

+  margin-bottom: 15px;

+  font-size: 15px;

+  transition: all 0.3s;

+}

+

+.comment-form textarea:focus {

+  border-color: #1e3c72;

+  box-shadow: 0 0 0 3px rgba(30, 60, 114, 0.2);

+  outline: none;

+}

+

+.comment-form button[type="submit"] {

+  padding: 12px 24px;

+  background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);

+  color: white;

+  border: none;

+  border-radius: 6px;

+  font-weight: 600;

+  cursor: pointer;

+  transition: all 0.3s;

+}

+

+.comment-form button[type="submit"]:hover {

+  transform: translateY(-2px);

+  box-shadow: 0 4px 12px rgba(30, 60, 114, 0.3);

+}

+

+/* 图片上传按钮 - 现代风格 */

+.upload-image-btn {

+  position: relative;

+  margin-bottom: 15px;

+}

+

+.upload-image-btn input[type="file"] {

+  position: absolute;

+  width: 1px;

+  height: 1px;

+  padding: 0;

+  margin: -1px;

+  overflow: hidden;

+  clip: rect(0, 0, 0, 0);

+  border: 0;

+}

+

+.upload-image-btn label {

+  display: inline-block;

+  padding: 8px 16px;

+  background: #f0f2f5;

+  border-radius: 6px;

+  color: #666;

+  font-size: 14px;

+  cursor: pointer;

+  transition: all 0.3s;

+}

+

+.upload-image-btn label:hover {

+  background: #e4e6eb;

+}

+

+/* 评论列表 - 卡片式设计 */

+.comment-list {

+  margin-top: 25px;

+}

+

+.comment-item {

+  display: flex;

+  padding: 20px;

+  margin-bottom: 20px;

+  background: #f9fafc;

+  border-radius: 10px;

+  transition: all 0.3s;

+  position: relative;

+}

+

+.comment-item:hover {

+  background: #f0f4f8;

+  transform: translateX(5px);

+}

+

+.comment-avatar {

+  width: 50px;

+  height: 50px;

+  border-radius: 50%;

+  margin-right: 15px;

+  object-fit: cover;

+  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);

+  color: white;

+  display: flex;

+  align-items: center;

+  justify-content: center;

+  font-weight: bold;

+  font-size: 20px;

+  flex-shrink: 0;

 }

 

 .comment-content {

@@ -340,163 +363,66 @@
 

 .comment-header {

   display: flex;

+  justify-content: space-between;

   align-items: center;

-  margin-bottom: 8px;

+  margin-bottom: 10px;

 }

 

-.comment-author {

-  font-weight: bold;

-  margin-right: 10px;

-  color: #333;

+.comment-user {

+  font-weight: 700;

+  color: #1e3c72;

 }

 

-.comment-date {

-  font-size: 12px;

-  color: #999;

+.reply-to {

+  color: #666;

+  font-size: 14px;

+  margin-left: 10px;

+}

+

+.comment-time {

+  color: #888;

+  font-size: 13px;

 }

 

 .comment-text {

-  margin-bottom: 10px;

-  line-height: 1.5;

+  line-height: 1.7;

   color: #333;

+  margin-bottom: 15px;

 }

 

 .comment-actions {

   display: flex;

-  align-items: center;

-  margin-top: 10px;

+  gap: 15px;

 }

 

-.like-button {

-  background: none;

-  border: none;

-  cursor: pointer;

-  color: #666;

-  font-size: 14px;

-  padding: 4px 8px;

-  display: flex;

-  align-items: center;

-}

-

-.like-button.liked {

-  color: #1877f2;

-}

-

-.like-button:hover {

-  text-decoration: underline;

-}

-

-/* 回复控制按钮 */

-.reply-controls {

-  margin: 10px 0;

-}

-

-.toggle-replies-btn {

+.comment-actions button {

   background: none;

   border: none;

   color: #666;

-  cursor: pointer;

   font-size: 14px;

-  padding: 4px 8px;

-}

-

-.toggle-replies-btn:hover {

-  color: #333;

-  text-decoration: underline;

-}

-

-.toggle-replies-btn:disabled {

-  color: #ccc;

-  cursor: not-allowed;

-}

-

-/* 回复表单 */

-.reply-form {

-  margin-top: 10px;

-  width: 100%;

-}

-

-.reply-form textarea {

-  width: 100%;

-  padding: 8px;

-  border: 1px solid #ddd;

-  border-radius: 4px;

-  resize: vertical;

-  min-height: 60px;

-  margin-bottom: 8px;

-}

-

-.submit-reply {

-  background-color: #f0f2f5;

-  border: none;

-  border-radius: 4px;

-  padding: 6px 12px;

   cursor: pointer;

-  color: #333;

-}

-

-.submit-reply:hover {

-  background-color: #e4e6eb;

-}

-

-/* 回复列表 */

-.reply-list {

-  margin-left: 55px; /* 头像宽度 + 边距 */

-  border-left: 2px solid #eee;

-  padding-left: 15px;

-  margin-top: 15px;

-}

-

-.reply-item {

-  display: flex;

-  margin-bottom: 15px;

-  padding: 12px;

-  background: #f9f9f9;

-  border-radius: 6px;

-}

-

-.reply-avatar {

-  width: 32px;

-  height: 32px;

-  border-radius: 50%;

-  margin-right: 10px;

-  object-fit: cover;

-}

-

-.reply-content {

-  flex: 1;

-}

-

-.reply-header {

+  transition: all 0.3s;

+  padding: 5px 10px;

+  border-radius: 4px;

   display: flex;

   align-items: center;

-  margin-bottom: 5px;

+  gap: 5px;

 }

 

-.reply-author {

-  font-weight: bold;

-  margin-right: 8px;

-  font-size: 14px;

-  color: #333;

+.comment-actions button:hover {

+  color: #1e3c72;

+  background: rgba(30, 60, 114, 0.1);

 }

 

-.reply-date {

-  font-size: 12px;

-  color: #999;

+.delete-comment-btn {

+  color: #ff4d4f !important;

 }

 

-.reply-text {

-  font-size: 14px;

-  line-height: 1.4;

-  color: #333;

-  margin-bottom: 5px;

+.delete-comment-btn:hover {

+  background: rgba(255, 77, 79, 0.1) !important;

 }

 

-.reply-actions {

-  margin-top: 5px;

-}

-

-/* 回复弹窗样式 */

+/* 回复弹窗 - 现代化设计 */

 .reply-modal-overlay {

   position: fixed;

   top: 0;

@@ -508,79 +434,130 @@
   justify-content: center;

   align-items: center;

   z-index: 1000;

+  backdrop-filter: blur(5px);

 }

 

 .reply-modal {

   background: white;

-  padding: 20px;

-  border-radius: 8px;

+  padding: 25px;

+  border-radius: 12px;

   width: 500px;

   max-width: 90%;

+  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);

+  position: relative;

 }

 

-.reply-modal h3 {

-  margin-top: 0;

-  margin-bottom: 15px;

+.modal-header {

+  display: flex;

+  justify-content: space-between;

+  align-items: center;

+  margin-bottom: 20px;

+}

+

+.modal-header h3 {

+  margin: 0;

+  color: #1e3c72;

+  font-size: 20px;

+}

+

+.close-modal {

+  background: none;

+  border: none;

+  font-size: 24px;

+  color: #666;

+  cursor: pointer;

+  transition: all 0.3s;

+}

+

+.close-modal:hover {

+  color: #1e3c72;

+  transform: rotate(90deg);

 }

 

 .reply-modal textarea {

   width: 100%;

-  padding: 10px;

-  border: 1px solid #ddd;

-  border-radius: 4px;

+  padding: 15px;

+  border: 2px solid #f0f2f5;

+  border-radius: 8px;

   resize: vertical;

-  min-height: 100px;

+  min-height: 120px;

   margin-bottom: 15px;

+  font-size: 15px;

+  transition: all 0.3s;

+}

+

+.reply-modal textarea:focus {

+  border-color: #1e3c72;

+  box-shadow: 0 0 0 3px rgba(30, 60, 114, 0.2);

+  outline: none;

 }

 

 .modal-actions {

   display: flex;

   justify-content: flex-end;

-  gap: 10px;

+  gap: 15px;

 }

 

-.cancel-button {

+.cancel-btn {

+  padding: 10px 20px;

   background: #f5f5f5;

-  border: 1px solid #d9d9d9;

-  border-radius: 4px;

-  padding: 8px 16px;

+  color: #666;

+  border: none;

+  border-radius: 6px;

+  font-weight: 600;

   cursor: pointer;

+  transition: all 0.3s;

 }

 

-.submit-button {

-  background: #1890ff;

+.cancel-btn:hover {

+  background: #e0e0e0;

+}

+

+.submit-btn {

+  padding: 10px 20px;

+  background: linear-gradient(135deg, #1e3c72 0%, #2a5298 100%);

   color: white;

   border: none;

-  border-radius: 4px;

-  padding: 8px 16px;

+  border-radius: 6px;

+  font-weight: 600;

   cursor: pointer;

+  transition: all 0.3s;

 }

 

-.post-image-container {

-  width: 100%;

-  max-width: 500px; /* 最大宽度 */

-  margin: 10px 0;

+.submit-btn:hover {

+  transform: translateY(-2px);

+  box-shadow: 0 4px 12px rgba(30, 60, 114, 0.3);

 }

 

-.post-image {

-  width: 100%;

-  height: auto;

-  max-height: 400px; /* 最大高度 */

-  object-fit: contain; /* 保持比例完整显示图片 */

-  border-radius: 4px;

+/* 响应式设计 */

+@media (max-width: 768px) {

+  .help-detail-container {

+    padding: 15px;

+  }

+  

+  .post-title {

+    font-size: 24px;

+  }

+  

+  .post-actions {

+    flex-direction: column;

+  }

+  

+  .comment-item {

+    flex-direction: column;

+  }

+  

+  .comment-avatar {

+    margin-bottom: 15px;

+  }

 }

 

-.comment-image-container {

-  width: 100%;

-  max-width: 500px; /* 最大宽度 */

-  margin: 10px 0;

+/* 动画效果 */

+@keyframes fadeIn {

+  from { opacity: 0; transform: translateY(10px); }

+  to { opacity: 1; transform: translateY(0); }

 }

 

-.comment-image {

-  width: 100%;

-  height: auto;

-  max-height: 400px; /* 最大高度 */

-  object-fit: contain; /* 保持比例完整显示图片 */

-  border-radius: 4px;

-}

-

+.help-post, .comments-section {

+  animation: fadeIn 0.5s ease-out forwards;

+}
\ No newline at end of file