samplingDesc3.vue 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418
  1. <template>
  2. <div class="sampling-process">
  3. <div class="header-section">
  4. <h2>土壤渗流</h2>
  5. <div class="subtitle">重金属在土壤-农作物系统中的迁移与输出机制</div>
  6. </div>
  7. <div class="content-section">
  8. <div class="text-content">
  9. <p>
  10. 土壤渗流是农田土壤重金属输出的重要途径,过度耕种会加剧土壤水分和营养的流失,而降水会对这一过程产生影响。通常,土壤重金属渗流通量通过质量平衡模型间接计算,该模型假设土壤中未渗流的重金属通过径流途径输出。
  11. </p>
  12. <p>
  13. 图详细展示了土壤渗流作为重金属纵向迁移重要途径的过程。如图所示,土壤中的重金属在降水和重力作用下,通过土壤孔隙向下渗透,最终进入地下水系统。图中左侧部分清晰地描绘了农田土壤剖面,包括表层土壤、根系分布区以及下方的地下水层。土壤中的水分和溶解态重金属随着水流向下移动,形成明显的渗流路径。
  14. </p>
  15. </div>
  16. </div>
  17. <div class="image-row">
  18. <div class="image-container">
  19. <el-image :src="image3" alt="土壤渗流是重金属迁移的重要途径" class="sampling-image"></el-image>
  20. <p class="image-caption">
  21. 土壤渗流是重金属迁移的重要途径
  22. </p>
  23. </div>
  24. </div>
  25. <!-- 新增视频区域 -->
  26. <div class="video-section">
  27. <h3 class="video-title">土壤渗流过程视频演示</h3>
  28. <div class="video-container">
  29. <video controls class="sampling-video">
  30. <source src="@/assets/videos/地下渗漏.mp4" type="video/mp4">
  31. 您的浏览器不支持HTML5视频播放。
  32. </video>
  33. <p class="video-caption">
  34. 视频展示了重金属在地下中的积累过程
  35. </p>
  36. </div>
  37. </div>
  38. </div>
  39. </template>
  40. <script>
  41. export default {
  42. data() {
  43. return {
  44. image3: 'https://hunyuan-plugin-1258344706.cos.ap-nanjing.myqcloud.com/pdf_youtu/img/2412b59952255362b77987e45875b820-image.png',
  45. };
  46. }
  47. };
  48. </script>
  49. <style scoped>
  50. .sampling-process {
  51. padding: 30px;
  52. background: linear-gradient(135deg, rgba(230, 247, 255, 0.7) 0%, rgba(240, 248, 255, 0.7) 100%);
  53. position: relative;
  54. overflow: hidden;
  55. border-radius: 16px;
  56. box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  57. }
  58. .sampling-process::before {
  59. content: "";
  60. position: absolute;
  61. top: 0;
  62. left: 0;
  63. width: 100%;
  64. height: 100%;
  65. background: url('https://images.unsplash.com/photo-1518834107812-67b0b7c58434?q=80&w=2070&auto=format&fit=crop') center/cover;
  66. opacity: 0.15;
  67. z-index: -1;
  68. filter: blur(2px);
  69. }
  70. /* 标题区域 */
  71. .header-section {
  72. text-align: center;
  73. margin-bottom: 30px;
  74. padding-bottom: 20px;
  75. border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  76. }
  77. .header-section h2 {
  78. position: relative;
  79. padding-bottom: 15px;
  80. margin-bottom: 10px;
  81. color: #1a365d;
  82. font-size: 2rem;
  83. font-weight: 700;
  84. text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  85. }
  86. .header-section h2::after {
  87. content: "";
  88. position: absolute;
  89. bottom: 0;
  90. left: 50%;
  91. transform: translateX(-50%);
  92. width: 80px;
  93. height: 4px;
  94. background: linear-gradient(90deg, #4a9ef7, #3acfd5);
  95. border-radius: 3px;
  96. }
  97. .subtitle {
  98. font-size: 1.2rem;
  99. color: #2d5986;
  100. font-weight: 500;
  101. letter-spacing: 0.5px;
  102. }
  103. /* 内容区域 */
  104. .content-section {
  105. margin-bottom: 40px;
  106. padding: 25px;
  107. background: rgba(255, 255, 255, 0.85);
  108. border-radius: 12px;
  109. box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
  110. transition: all 0.4s ease;
  111. overflow: hidden;
  112. }
  113. .content-section:hover {
  114. transform: translateY(-5px);
  115. box-shadow: 0 8px 25px rgba(极简版0, 0, 0, 0.15);
  116. background: rgba(255, 255, 255, 0.92);
  117. }
  118. .text-content {
  119. margin-bottom: 30px;
  120. }
  121. p {
  122. text-indent: 2em;
  123. margin: 20px 0;
  124. line-height: 1.8;
  125. color: #2d3748;
  126. font-size: 1.1rem;
  127. position: relative;
  128. padding-left: 20px;
  129. }
  130. p::before {
  131. content: "•";
  132. position: absolute;
  133. left: 0;
  134. top: 0;
  135. color: #3a9fd3;
  136. font-size: 1.5rem;
  137. line-height: 1.8;
  138. }
  139. /* 图片区域 */
  140. .image-row {
  141. display: flex;
  142. justify-content: center;
  143. margin-bottom: 30px;
  144. }
  145. .image-container {
  146. border-radius: 12px;
  147. overflow: hidden;
  148. position: relative;
  149. box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
  150. max-width: 800px; /* 设置最大宽度 */
  151. width: 100%; /* 宽度100% */
  152. margin: 0 auto;
  153. transition: all 0.4s ease;
  154. }
  155. .image-container:hover {
  156. transform: scale(1.01);
  157. box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
  158. }
  159. .sampling-image {
  160. width: 100%;
  161. height: auto;
  162. min-height: 350px;
  163. display: block;
  164. background: rgba(245, 249, 255, 0.4);
  165. object-fit: cover;
  166. transition: transform 0.5s ease;
  167. }
  168. .image-container:hover .sampling-image {
  169. transform: scale(1.02);
  170. }
  171. .image-caption {
  172. text-align: center;
  173. font-size: 1.1rem;
  174. color: #1a365d;
  175. padding: 15px;
  176. font-weight: 600;
  177. background: linear-gradient(to right, rgba(248, 250, 252, 0.9), rgba(240, 248, 255, 0.9));
  178. margin: 0;
  179. border-top: 1px dashed #cbd5e0;
  180. position: relative;
  181. }
  182. .image-caption::before {
  183. content: "📌";
  184. position: absolute;
  185. left: 20px;
  186. top: 50%;
  187. transform: translateY(-50%);
  188. }
  189. /* 视频区域 */
  190. .video-section {
  191. margin-top: 40px;
  192. padding-top: 30px;
  193. border-top: 1px solid rgba(0, 0, 0, 0.1);
  194. }
  195. .video-title {
  196. text-align: center;
  197. color: #1a365d;
  198. font-size: 1.5rem;
  199. margin-bottom: 20px;
  200. position: relative;
  201. padding-bottom: 10px;
  202. }
  203. .video-title::after {
  204. content: "";
  205. position: absolute;
  206. bottom: 0;
  207. left: 50%;
  208. transform: translateX(-50%);
  209. width: 60px;
  210. height: 3px;
  211. background: linear-gradient(90deg, #4a9ef7, #3acfd5);
  212. border-radius: 2px;
  213. }
  214. .video-container {
  215. border-radius: 12px;
  216. overflow: hidden;
  217. position: relative;
  218. box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
  219. max-width: 800px; /* 设置与图片相同的最大宽度 */
  220. width: 100%; /* 宽度100% */
  221. margin: 0 auto;
  222. transition: all 0.4s ease;
  223. }
  224. .video-container:hover {
  225. transform: translateY(-5px);
  226. box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
  227. }
  228. .sampling-video {
  229. width: 100%;
  230. height: auto;
  231. display: block;
  232. background: #f8fafc;
  233. min-height: 350px;
  234. }
  235. .video-caption {
  236. text-align: center;
  237. font-size: 1.1rem;
  238. color: #1a365d;
  239. padding: 15px;
  240. font-weight: 600;
  241. background: linear-gradient(to right, rgba(248, 250, 252, 0.9), rgba(240, 248, 255, 0.9));
  242. margin: 0;
  243. border-top: 1px dashed #cbd5e0;
  244. position: relative;
  245. }
  246. .video-caption::before {
  247. content: "📹";
  248. position: absolute;
  249. left: 20px;
  250. top: 50%;
  251. transform: translateY(-50%);
  252. }
  253. /* 装饰元素 */
  254. .decorative-element {
  255. position: absolute;
  256. width: 100px;
  257. height: 100px;
  258. border-radius: 50%;
  259. background: linear-gradient(135deg, rgba(74, 158, 247, 0.1), rgba(58, 207, 213, 0.1));
  260. z-index: -1;
  261. }
  262. .decorative-element:nth-child(1) {
  263. top: 10%;
  264. left: 5%;
  265. width: 80px;
  266. height: 80px;
  267. }
  268. .decorative-element:nth-child(2) {
  269. bottom: 15%;
  270. right: 8%;
  271. width: 60px;
  272. height: 60px;
  273. }
  274. /* 响应式设计 */
  275. @media (max-width: 900px) {
  276. .sampling-process {
  277. padding: 20px;
  278. }
  279. .header-section h2 {
  280. font-size: 1.8rem;
  281. }
  282. .subtitle {
  283. font-size: 1.1rem;
  284. }
  285. .content-section {
  286. padding: 20px;
  287. }
  288. .sampling-image,
  289. .sampling-video {
  290. min-height: 300px;
  291. }
  292. .image-container,
  293. .video-container {
  294. max-width: 700px; /* 小屏幕上减小最大宽度 */
  295. }
  296. }
  297. @media (max-width: 768px) {
  298. .sampling-process {
  299. padding: 15px;
  300. }
  301. .header-section h2 {
  302. font-size: 1.6rem;
  303. }
  304. p {
  305. font-size: 1rem;
  306. padding-left: 15px;
  307. }
  308. .image-caption,
  309. .video-caption {
  310. font-size: 1rem;
  311. padding: 12px;
  312. }
  313. .sampling-image,
  314. .sampling-video {
  315. min-height: 250px;
  316. }
  317. .video-title {
  318. font-size: 1.3rem;
  319. }
  320. .image-container,
  321. .video-container {
  322. max-width: 600px; /* 小屏幕上减小最大宽度 */
  323. }
  324. }
  325. @media (max-width: 480px) {
  326. .sampling-process {
  327. padding: 10px;
  328. }
  329. .header-section h2 {
  330. font-size: 1.4rem;
  331. }
  332. .subtitle {
  333. font-size: 0.95rem;
  334. }
  335. .content-section {
  336. padding: 15px;
  337. }
  338. p {
  339. font-size: 0.95rem;
  340. padding-left: 10px;
  341. }
  342. .image-caption,
  343. .video-caption {
  344. font-size: 0.9rem;
  345. padding: 10px 15px 10px 35px;
  346. }
  347. .image-caption::before,
  348. .video-caption::before {
  349. left: 10px;
  350. }
  351. .sampling-image,
  352. .sampling-video {
  353. min-height: 200px;
  354. }
  355. .video-title {
  356. font-size: 1.1rem;
  357. }
  358. .image-container,
  359. .video-container {
  360. max-width: 100%; /* 小屏幕上宽度100% */
  361. }
  362. }
  363. </style>