chart-phases.html 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Optimization Lifecycle</title>
  6. <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800;900&display=swap" rel="stylesheet">
  7. <style>
  8. * { margin: 0; padding: 0; box-sizing: border-box; }
  9. body {
  10. width: 1200px;
  11. height: 400px;
  12. background: #111111;
  13. font-family: 'Inter', -apple-system, sans-serif;
  14. overflow: hidden;
  15. position: relative;
  16. }
  17. .top-label {
  18. position: absolute;
  19. top: 28px;
  20. left: 44px;
  21. font-size: 11px;
  22. font-weight: 800;
  23. letter-spacing: 0.18em;
  24. color: #D4532B;
  25. text-transform: uppercase;
  26. }
  27. /* Center row: phases + arrows */
  28. .row {
  29. position: absolute;
  30. top: 50%;
  31. left: 50%;
  32. transform: translate(-50%, -50%);
  33. display: flex;
  34. align-items: center;
  35. gap: 0;
  36. }
  37. /* === Phase boxes === */
  38. .phase {
  39. display: flex;
  40. flex-direction: column;
  41. align-items: center;
  42. justify-content: center;
  43. border-radius: 8px;
  44. flex-shrink: 0;
  45. }
  46. .phase-num {
  47. font-weight: 900;
  48. line-height: 1;
  49. }
  50. .phase-name {
  51. font-weight: 600;
  52. text-align: center;
  53. line-height: 1.3;
  54. }
  55. /* Regular dark */
  56. .p-dark {
  57. background: #1D1D1D;
  58. border: 1px solid #2D2D2D;
  59. width: 130px;
  60. height: 130px;
  61. }
  62. .p-dark .phase-num {
  63. font-size: 38px;
  64. color: #FFFFFF;
  65. margin-bottom: 10px;
  66. }
  67. .p-dark .phase-name {
  68. font-size: 13px;
  69. color: #888888;
  70. }
  71. /* White */
  72. .p-white {
  73. background: #FFFFFF;
  74. border: 1px solid #DDDDDD;
  75. width: 130px;
  76. height: 130px;
  77. }
  78. .p-white .phase-num {
  79. font-size: 38px;
  80. color: #111111;
  81. margin-bottom: 10px;
  82. }
  83. .p-white .phase-name {
  84. font-size: 13px;
  85. color: #555555;
  86. }
  87. /* Core - Phase 2 */
  88. .p-core {
  89. background: #D4532B;
  90. border: 2px solid #E06035;
  91. width: 196px;
  92. height: 196px;
  93. box-shadow: 0 0 50px rgba(212, 83, 43, 0.4), 0 0 16px rgba(212, 83, 43, 0.25);
  94. }
  95. .p-core .phase-num {
  96. font-size: 56px;
  97. color: #FFFFFF;
  98. margin-bottom: 12px;
  99. }
  100. .p-core .phase-name {
  101. font-size: 15px;
  102. font-weight: 700;
  103. color: rgba(255,255,255,0.93);
  104. }
  105. /* === Connector === */
  106. .connector {
  107. display: flex;
  108. flex-direction: column;
  109. align-items: center;
  110. width: 72px;
  111. flex-shrink: 0;
  112. position: relative;
  113. }
  114. .conn-label {
  115. font-size: 9.5px;
  116. color: #505050;
  117. font-weight: 600;
  118. letter-spacing: 0.04em;
  119. white-space: nowrap;
  120. margin-bottom: 9px;
  121. }
  122. .arrow {
  123. display: flex;
  124. align-items: center;
  125. width: 100%;
  126. }
  127. .arrow-line {
  128. flex: 1;
  129. height: 2px;
  130. background: #D4532B;
  131. }
  132. .arrow-head {
  133. width: 0;
  134. height: 0;
  135. border-top: 5px solid transparent;
  136. border-bottom: 5px solid transparent;
  137. border-left: 9px solid #D4532B;
  138. }
  139. </style>
  140. </head>
  141. <body>
  142. <div class="top-label">OPTIMIZATION LIFECYCLE</div>
  143. <div class="row">
  144. <div class="phase p-dark">
  145. <div class="phase-num">0</div>
  146. <div class="phase-name">初始化</div>
  147. </div>
  148. <div class="connector">
  149. <div class="conn-label">人类确认</div>
  150. <div class="arrow">
  151. <div class="arrow-line"></div>
  152. <div class="arrow-head"></div>
  153. </div>
  154. </div>
  155. <div class="phase p-dark">
  156. <div class="phase-num">0.5</div>
  157. <div class="phase-name">测试设计</div>
  158. </div>
  159. <div class="connector">
  160. <div class="conn-label">人类确认</div>
  161. <div class="arrow">
  162. <div class="arrow-line"></div>
  163. <div class="arrow-head"></div>
  164. </div>
  165. </div>
  166. <div class="phase p-white">
  167. <div class="phase-num">1</div>
  168. <div class="phase-name">基线评估</div>
  169. </div>
  170. <div class="connector">
  171. <div class="conn-label">人类确认</div>
  172. <div class="arrow">
  173. <div class="arrow-line"></div>
  174. <div class="arrow-head"></div>
  175. </div>
  176. </div>
  177. <div class="phase p-core">
  178. <div class="phase-num">2</div>
  179. <div class="phase-name">优化循环</div>
  180. </div>
  181. <div class="connector">
  182. <div class="conn-label">人类确认</div>
  183. <div class="arrow">
  184. <div class="arrow-line"></div>
  185. <div class="arrow-head"></div>
  186. </div>
  187. </div>
  188. <div class="phase p-dark">
  189. <div class="phase-num">3</div>
  190. <div class="phase-name">汇总报告</div>
  191. </div>
  192. </div>
  193. </body>
  194. </html>