three实现悉尼蓝花楹街角三维微缩场景代码
代码语言:html
所属分类:其他
代码由qwen-3.8-max ai生成,可能有错误,仅供参考:点击查看提示词
代码描述:three实现悉尼蓝花楹街角三维微缩场景代码
代码标签: three 悉尼 蓝花楹 街角 三维 微缩 场景 代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>蓝花楹街角 · Sydney Jacaranda Corner</title>
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@600;900&family=Noto+Sans+SC:wght@300;400&display=swap" rel="stylesheet">
<style>
:root{ --ink:#2f2b38; --sub:#8d87a0; --accent:#7a68c8; --paper:#f6f3ec; }
*{ margin:0; padding:0; box-sizing:border-box; }
html,body{ height:100%; overflow:hidden; }
body{
background:var(--paper);
font-family:"Noto Sans SC",-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
color:var(--ink); transition:background 1.4s ease;
-webkit-user-select:none; user-select:none;
}
body[data-mode="dusk"]{ --paper:#f2e8de; }
body[data-mode="night"]{ --paper:#e9e7f2; --ink:#3a3550; --sub:#9a94b4; --accent:#6c5bb8; }
#stage{ position:fixed; inset:0; opacity:0; transition:opacity 1.4s ease .1s; }
#stage.ready{ opacity:1; }
#stage canvas{ display:block; touch-action:none; cursor:grab; }
#stage canvas:active{ cursor:grabbing; }
.vignette{ position:fixed; inset:0; pointer-events:none;
background:radial-gradient(120% 90% at 50% 42%, transparent 55%, rgba(96,84,130,.06) 100%); }
header{ position:fixed; top:42px; left:48px; pointer-events:none; }
.tag{ font-size:11px; letter-spacing:.42em; color:var(--accent); font-weight:400; }
h1{ font-family:"Noto Serif SC",serif; font-weight:900; font-size:clamp(30px,4.2vw,46px);
letter-spacing:.06em; margin:10px 0 12px; line-height:1.1; }
.sub{ font-size:12.5px; color:var(--sub); letter-spacing:.14em; font-weight:300; }
.meta{ position:fixed; top:48px; right:52px; text-align:right; pointer-events:none;
font-size:11px; color:var(--sub); letter-spacing:.22em; line-height:2.1; }
.modes{ position:fixed; left:48px; bottom:44px; display:flex; align-items:center; gap:28px; }
.modes span{ font-size:11px; letter-spacing:.3em; color:var(--sub); }
.modes button{ border:0; background:none; font-family:inherit; font-size:14px; letter-spacing:.18em;
color:var(--sub); padding:6px 2px; cursor:pointer; position:relative; transition:color .5s; }
.modes button::after{ content:""; position:absolute; left:50%; bottom:-2px; width:0; height:2px;
background:var(--accent); transition:width .45s cubic-bezier(.6,0,.2,1), left .45s cubic-bezier(.6,0,.2,1); }
.modes button.on{ color:var(--ink); }
.modes button.on::after{ width:100%; left:0; }
.hint{ position:fixed; right:52px; bottom:46px; font-size:11px; letter-spacing:.26em;
color:var(--sub); pointer-events:none; }
.dot{ display:inline-block; width:6px; height:6px; border-radius:50%; background:var(--accent);
margin-right:10px; vertical-align:1px; animation:pulse 2.6s ease-in-out infinite; }
@keyframes pulse{ 0%,100%{opacity:.35; transform:scale(.8);} 50%{opacity:1; transform:scale(1);} }
#loading{ position:fixed; inset:0; display:flex; align-items:center; justify-content:center;
background:var(--paper); z-index:9; transition:opacity .8s ease; font-size:12px;
letter-spacing:.5em; color:var(--sub); }
#loading.hide{ opacity:0; pointer-events:none; }
@media (max-width:640px){
header{ top:26px; left:24px; } .meta{ display:none; }
.modes{ left:24px; bottom:26px; gap:18px; } .hint{ display:none; }
}
</style>
</head>
<body data-mode="day">
<div id="stage"></div>
<div class="vignette"></div>
<header>
<div class="tag">SYDNEY · PADDINGTON</div>
<h1>蓝花楹街角</h1>
<div class="sub">十 一 月 花 事 · 微 缩 景 观</div>
</header>
<div class="meta">33.85° S · 151.22° E<.........完整代码请登录后点击上方下载按钮下载查看















网友评论0