返回 oh-my-ppt
preview.html
根目录 / resources / styles / nord / preview.html
1 <!DOCTYPE html>
2 <html lang="zh-CN">
3 <head>
4 <meta charset="UTF-8" />
5 <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6 <title>北欧 · nord</title>
7 <style>
8 *{box-sizing:border-box;margin:0}
9 html,body{width:100%;height:100%;overflow:hidden}
10 html{display:grid;place-items:center;background:#0f1117}
11 body{display:grid;place-items:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:#eceff4;background:#0f1117}
12
13 .slide {
14 position: relative;
15 width: min(100vw, calc(100vh * 16 / 9));
16 aspect-ratio: 16/9;
17 overflow: hidden;
18 background: linear-gradient(135deg, #2e3440 0%, #3b4252 40%, #434c5e 70%, #3b4252 100%);
19 box-shadow: 0 0 0 1px rgba(136,192,208,.08);
20 }
21
22 /* Frosted border effect */
23 .slide::before {
24 content: "";
25 position: absolute;
26 inset: 0;
27 border: 1px solid rgba(136,192,208,.1);
28 pointer-events: none;
29 z-index: 5;
30 }
31
32 /* Subtle ice blue aurora */
33 .slide::after {
34 content: "";
35 position: absolute;
36 top: 0; left: 0; right: 0;
37 height: 40%;
38 background: linear-gradient(180deg, rgba(136,192,208,.06) 0%, transparent 100%);
39 pointer-events: none;
40 }
41
42 .content {
43 position: absolute;
44 inset: 8% 7%;
45 z-index: 2;
46 display: grid;
47 grid-template-columns: 1.1fr .9fr;
48 gap: 6%;
49 align-items: stretch;
50 }
51
52 .hero {
53 display: flex;
54 flex-direction: column;
55 justify-content: space-between;
56 }
57
58 .eyebrow {
59 font-size: clamp(7px, .95vw, 11px);
60 font-weight: 700;
61 letter-spacing: .15em;
62 text-transform: uppercase;
63 color: #88c0d0;
64 margin-bottom: 3%;
65 display: flex;
66 align-items: center;
67 gap: 8px;
68 }
69 .eyebrow::before {
70 content: "";
71 display: inline-block;
72 width: 20px; height: 1px;
73 background: #88c0d0;
74 }
75
76 h1 {
77 font-size: clamp(32px, 5.5vw, 68px);
78 line-height: .92;
79 font-weight: 900;
80 color: #eceff4;
81 letter-spacing: -.02em;
82 }
83
84 .desc {
85 margin-top: 4%;
86 font-size: clamp(10px, 1.35vw, 15px);
87 line-height: 1.7;
88 color: rgba(236,239,244,.6);
89 max-width: 92%;
90 }
91
92 .tags {
93 display: flex;
94 flex-wrap: wrap;
95 gap: 8px;
96 margin-top: 5%;
97 }
98 .tags span {
99 border: 1px solid rgba(136,192,208,.15);
100 background: rgba(136,192,208,.05);
101 border-radius: 6px;
102 padding: 4px 10px;
103 font-size: clamp(7px, .85vw, 10px);
104 font-weight: 600;
105 color: rgba(236,239,244,.75);
106 }
107
108 .story {
109 display: grid;
110 grid-template-columns: 1fr 1fr;
111 gap: 3%;
112 margin-top: 5%;
113 }
114 .story p {
115 border-left: 2px solid #88c0d0;
116 padding-left: 8px;
117 font-size: clamp(8px, .95vw, 11px);
118 line-height: 1.5;
119 color: rgba(236,239,244,.5);
120 }
121
122 .chips {
123 display: flex;
124 gap: 10px;
125 margin-top: 4%;
126 }
127 .chips span {
128 font-size: clamp(7px, .85vw, 10px);
129 color: rgba(236,239,244,.4);
130 border-bottom: 1px solid rgba(136,192,208,.1);
131 padding-bottom: 2px;
132 }
133
134 /* Right panel - frosted glass card */
135 .panel {
136 position: relative;
137 overflow: hidden;
138 border: 1px solid rgba(136,192,208,.12);
139 border-radius: 12px;
140 background: rgba(46,52,64,.5);
141 backdrop-filter: blur(16px);
142 padding: 7%;
143 display: grid;
144 grid-template-rows: auto 1fr auto;
145 gap: 5%;
146 }
147 .panel::before {
148 content: "";
149 position: absolute;
150 top: 0; left: 0; right: 0;
151 height: 3px;
152 background: linear-gradient(90deg, #88c0d0, #81a1c1, #88c0d0);
153 }
154
155 .kicker {
156 font-size: clamp(8px, 1vw, 11px);
157 font-weight: 800;
158 letter-spacing: .12em;
159 text-transform: uppercase;
160 color: #88c0d0;
161 }
162
163 .layout {
164 font-size: clamp(9px, 1.05vw, 13px);
165 line-height: 1.6;
166 color: rgba(236,239,244,.55);
167 }
168
169 /* Serene soft shapes */
170 .visual {
171 position: relative;
172 min-height: 0;
173 border: 1px solid rgba(136,192,208,.08);
174 border-radius: 10px;
175 overflow: hidden;
176 background: rgba(0,0,0,.15);
177 }
178
179 .frost {
180 position: absolute;
181 border-radius: 48% 52% 46% 54%;
182 opacity: .35;
183 }
184 .f1 {
185 width: 55%; height: 60%;
186 left: -8%; top: 5%;
187 background: radial-gradient(circle, rgba(136,192,208,.2) 0%, transparent 70%);
188 }
189 .f2 {
190 width: 45%; height: 50%;
191 right: -5%; bottom: 5%;
192 background: radial-gradient(circle, rgba(129,161,193,.2) 0%, transparent 70%);
193 }
194
195 .frost-text {
196 position: absolute;
197 left: 12%; right: 12%;
198 top: 50%;
199 transform: translateY(-50%);
200 font-family: Georgia, "Songti SC", serif;
201 font-size: clamp(11px, 1.8vw, 20px);
202 line-height: 1.4;
203 color: rgba(236,239,244,.7);
204 text-align: center;
205 }
206
207 .palette {
208 display: flex;
209 gap: 7px;
210 }
211 .palette i {
212 display: block;
213 width: clamp(14px, 2vw, 22px);
214 height: clamp(14px, 2vw, 22px);
215 border-radius: 50%;
216 background: var(--c);
217 border: 1px solid rgba(255,255,255,.08);
218 }
219
220 .footer {
221 position: absolute;
222 left: 7%; right: 7%;
223 bottom: 4.5%;
224 z-index: 3;
225 display: flex;
226 align-items: center;
227 justify-content: space-between;
228 font-size: clamp(7px, .85vw, 10px);
229 font-weight: 700;
230 color: rgba(236,239,244,.3);
231 letter-spacing: .08em;
232 text-transform: uppercase;
233 }
234 .footer b { color: rgba(236,239,244,.65) }
235
236 @media(max-aspect-ratio:16/9){.slide{width:min(100vw,calc(100vh*16/9));height:auto}}
237 @media(min-aspect-ratio:16/9){.slide{height:min(100vh,calc(100vw*9/16));width:auto}}
238 </style>
239 </head>
240 <body>
241 <main class="slide" aria-label="北欧 style preview">
242 <section class="content">
243 <div class="hero">
244 <div>
245 <div class="eyebrow">冷色 · 深色 · nord</div>
246 <h1>北欧</h1>
247 <p class="desc">极夜蓝底映冰蓝微光,安静到只听得见思考的声音</p>
248 <div class="tags">
249 <span>基础设施介绍</span>
250 <span>云产品发布</span>
251 <span>技术架构分享</span>
252 </div>
253 <div class="story">
254 <p>标题 #eceff4 极浅灰白、正文 #d8dee9 浅灰,强调色 #88c0d0 冰蓝与 #81a1c1 钢蓝是极夜中仅有的光。</p>
255 <p>冷静的无衬线字体,字重偏轻到中等。极简而克制。</p>
256 </div>
257 </div>
258 <div class="chips">
259 <span>fade-up</span>
260 <span>stagger-list</span>
261 <span>path-draw</span>
262 </div>
263 </div>
264 <aside class="panel">
265 <div>
266 <div class="kicker">Style DNA</div>
267 <div class="layout">北欧风格是极夜中的宁静——深灰蓝的底色如挪威冬夜的天空,冰蓝的微光如极地星辉。</div>
268 </div>
269 <div class="visual">
270 <div class="frost f1"></div>
271 <div class="frost f2"></div>
272 <div class="frost-text">极夜蓝底映冰蓝微光,安静到只听得见思考的声音</div>
273 </div>
274 <div class="palette">
275 <i style="--c:#eceff4"></i>
276 <i style="--c:#d8dee9"></i>
277 <i style="--c:#88c0d0"></i>
278 <i style="--c:#81a1c1"></i>
279 <i style="--c:#2e3440"></i>
280 </div>
281 </aside>
282 </section>
283 <div class="footer">
284 <span><b>Layout</b> 极简布局,每个页面只承载一个核心信息。</span>
285 <span>16:9 preview</span>
286 </div>
287 </main>
288 </body>
289 </html>
290
290 lines HTML