返回 oh-my-ppt
preview.html
1 <!DOCTYPE html>
2 <html lang="zh-CN">
3 <head>
4 <meta charset="UTF-8" />
5 <title>夏日暖色</title>
6 <style>
7 * { box-sizing: border-box; margin: 0; padding: 0; }
8 html, body { width: 100%; height: 100%; overflow: hidden; }
9 body {
10 display: grid;
11 place-items: center;
12 font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;
13 }
14 .slide {
15 position: relative;
16 aspect-ratio: 16 / 9;
17 width: min(100vw, calc(100vh * 16 / 9));
18 overflow: hidden;
19 background: linear-gradient(180deg, #20A1EE 0%, #58C3F6 42%, #9DDF67 62%, #DAF5A7 100%);
20 color: #FFFFFF;
21 }
22 /* 太阳 */
23 .sun {
24 position: absolute;
25 top: 9%;
26 right: 11%;
27 width: 12%;
28 aspect-ratio: 1;
29 border-radius: 50%;
30 background: radial-gradient(circle at 50% 50%, #FFF7B0 0%, #FFF061 55%, #FFE15A 100%);
31 box-shadow: 0 0 60px 10px rgba(255,240,97,0.55);
32 }
33 .sun::before {
34 content: "";
35 position: absolute;
36 inset: -32%;
37 border-radius: 50%;
38 background:
39 conic-gradient(from 0deg,
40 rgba(255,240,97,0) 0deg, rgba(255,240,97,0.65) 6deg, rgba(255,240,97,0) 14deg,
41 rgba(255,240,97,0) 36deg, rgba(255,240,97,0.65) 42deg, rgba(255,240,97,0) 50deg,
42 rgba(255,240,97,0) 72deg, rgba(255,240,97,0.65) 78deg, rgba(255,240,97,0) 86deg,
43 rgba(255,240,97,0) 108deg, rgba(255,240,97,0.65) 114deg, rgba(255,240,97,0) 122deg,
44 rgba(255,240,97,0) 144deg, rgba(255,240,97,0.65) 150deg, rgba(255,240,97,0) 158deg,
45 rgba(255,240,97,0) 180deg, rgba(255,240,97,0.65) 186deg, rgba(255,240,97,0) 194deg,
46 rgba(255,240,97,0) 216deg, rgba(255,240,97,0.65) 222deg, rgba(255,240,97,0) 230deg,
47 rgba(255,240,97,0) 252deg, rgba(255,240,97,0.65) 258deg, rgba(255,240,97,0) 266deg,
48 rgba(255,240,97,0) 288deg, rgba(255,240,97,0.65) 294deg, rgba(255,240,97,0) 302deg,
49 rgba(255,240,97,0) 324deg, rgba(255,240,97,0.65) 330deg, rgba(255,240,97,0) 338deg,
50 rgba(255,240,97,0) 360deg);
51 mask: radial-gradient(circle, transparent 48%, #000 50%);
52 -webkit-mask: radial-gradient(circle, transparent 48%, #000 50%);
53 }
54 /* 云朵 */
55 .cloud {
56 position: absolute;
57 background: #FFFFFF;
58 border-radius: 50px;
59 opacity: 0.92;
60 }
61 .cloud::before, .cloud::after {
62 content: "";
63 position: absolute;
64 background: #FFFFFF;
65 border-radius: 50%;
66 }
67 .cloud.c1 { top: 16%; left: 9%; width: 16%; height: 3.6%; }
68 .cloud.c1::before { width: 55%; height: 180%; top: -75%; left: 18%; }
69 .cloud.c1::after { width: 42%; height: 150%; top: -50%; left: 50%; }
70 .cloud.c2 { top: 26%; left: 30%; width: 12%; height: 2.8%; opacity: 0.8; }
71 .cloud.c2::before { width: 60%; height: 190%; top: -85%; left: 15%; }
72 .cloud.c2::after { width: 45%; height: 160%; top: -55%; left: 48%; }
73
74 /* 草地纹理 */
75 .grass {
76 position: absolute;
77 left: 0; right: 0; bottom: 0;
78 height: 30%;
79 background:
80 radial-gradient(ellipse 60% 100% at 20% 100%, rgba(157,223,103,0.0) 40%, rgba(124,200,70,0.25) 100%),
81 radial-gradient(ellipse 70% 100% at 80% 100%, rgba(124,200,70,0.0) 40%, rgba(124,200,70,0.2) 100%);
82 }
83 /* 纸飞机 */
84 .plane {
85 position: absolute;
86 width: 0; height: 0;
87 border-style: solid;
88 opacity: 0.95;
89 }
90 .plane.p1 {
91 top: 40%; left: 14%;
92 border-width: 0 14px 22px 14px;
93 border-color: transparent transparent #FFFFFF transparent;
94 transform: rotate(-18deg);
95 filter: drop-shadow(0 4px 3px rgba(0,0,0,0.12));
96 }
97 .plane.p2 {
98 top: 33%; right: 24%;
99 border-width: 0 10px 16px 10px;
100 border-color: transparent transparent #FFFFFF transparent;
101 transform: rotate(22deg) scale(0.8);
102 opacity: 0.8;
103 }
104
105 /* 内容 */
106 .content {
107 position: absolute;
108 inset: 0;
109 display: flex;
110 flex-direction: column;
111 justify-content: center;
112 align-items: flex-start;
113 padding: 0 8%;
114 }
115 .eyebrow {
116 font-family: "Snell Roundhand", "Bradley Hand", "STKaiti", cursive;
117 font-style: italic;
118 font-size: clamp(14px, 1.9vw, 30px);
119 color: #FFF061;
120 letter-spacing: 0.04em;
121 margin-bottom: 1.4%;
122 text-shadow: 0 2px 6px rgba(20,90,150,0.25);
123 }
124 .title {
125 font-family: "Snell Roundhand", "Bradley Hand", "STKaiti", "KaiTi", cursive;
126 font-size: clamp(48px, 9vw, 132px);
127 font-weight: 700;
128 line-height: 1.05;
129 color: #FFFFFF;
130 letter-spacing: 0.02em;
131 text-shadow: 0 4px 14px rgba(20,90,150,0.28), 0 1px 0 rgba(255,255,255,0.15);
132 }
133 .title .accent {
134 color: #FE7F08;
135 text-shadow: 0 4px 14px rgba(254,127,8,0.35);
136 }
137 .subtitle {
138 margin-top: 2.2%;
139 font-size: clamp(13px, 1.7vw, 24px);
140 font-weight: 400;
141 line-height: 1.6;
142 color: #FFFFFF;
143 opacity: 0.95;
144 max-width: 52%;
145 text-shadow: 0 1px 4px rgba(20,90,150,0.3);
146 }
147 /* 色卡 */
148 .palette {
149 position: absolute;
150 left: 8%;
151 bottom: 5%;
152 display: flex;
153 gap: clamp(10px, 1.4vw, 22px);
154 align-items: center;
155 }
156 .swatch {
157 width: clamp(40px, 5.4vw, 80px);
158 aspect-ratio: 1;
159 border-radius: 50%;
160 box-shadow: 0 6px 14px rgba(0,0,0,0.12), inset 0 -3px 6px rgba(0,0,0,0.08);
161 border: 3px solid rgba(255,255,255,0.85);
162 }
163 .tag {
164 position: absolute;
165 right: 8%;
166 bottom: 6%;
167 display: flex;
168 align-items: center;
169 gap: 10px;
170 color: #FFFFFF;
171 font-size: clamp(11px, 1.2vw, 18px);
172 opacity: 0.85;
173 letter-spacing: 0.16em;
174 }
175 .tag .dot { width: 8px; height: 8px; border-radius: 50%; background: #FFADDD; }
176 </style>
177 </head>
178 <body>
179 <div class="slide">
180 <div class="sun"></div>
181 <div class="cloud c1"></div>
182 <div class="cloud c2"></div>
183 <div class="plane p1"></div>
184 <div class="plane p2"></div>
185 <div class="grass"></div>
186
187 <div class="content">
188 <div class="eyebrow">summer · 夏日碎片</div>
189 <h1 class="title">蝉鸣漫过<span class="accent">树梢</span></h1>
190 <p class="subtitle">把阳光、草地和一阵风,都揉进这一页里。<br/>属于六月的,松弛又明亮的小确幸。</p>
191 </div>
192
193 <div class="palette">
194 <div class="swatch" style="background:#20A1EE"></div>
195 <div class="swatch" style="background:#9DDF67"></div>
196 <div class="swatch" style="background:#FFF061"></div>
197 <div class="swatch" style="background:#FE7F08"></div>
198 <div class="swatch" style="background:#FFADDD"></div>
199 </div>
200
201 <div class="tag">
202 <span class="dot"></span>
203 <span>色彩沉溺 · 夏的另一种可能</span>
204 </div>
205 </div>
206 </body>
207 </html>
208
208 lines HTML