- 新增 web/ 纯音频 HTML5 平台:共享引擎(手势/WebAudio 三层/设置/震动)、 Node 零依赖服务器(静态 + 注册登录 + 进度存档 API) - 游戏:剑与声(RPG 新作)、声命线、暗室(重设计)、音序回响(重设计)、 节拍行者(跟随领奏重构)、盲航(同向闪避重构);声东击西删除 - 全局功能:男声/女声双套 TTS 资产、三档语速、BGM 音量三档、 震动反馈语言(10 种震型)、服务器进度同步 - 资产:899 ogg + 899 m4a(Qwen3-TTS 双性别语音、Stable Audio 3 音效、 Mureka BGM 4+3 首),终检零缺失 - 文档:docs/design/ 13 篇设计审查文档、docs/audio/ 资产管线、 web/server/README.md API 文档
72 lines
1.8 KiB
CSS
72 lines
1.8 KiB
CSS
/*
|
|
* style.css — 共享引擎样式:全屏黑底 + 封面铺满 + 屏蔽系统手势干扰。
|
|
* 游戏页引用方式:<link rel="stylesheet" href="../engine/style.css">
|
|
* 同时必须在 <head> 里带 viewport meta(见各 index.html):
|
|
* <meta name="viewport" content="width=device-width, initial-scale=1,
|
|
* maximum-scale=1, user-scalable=no, viewport-fit=cover">
|
|
*/
|
|
|
|
html, body {
|
|
margin: 0;
|
|
padding: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background: #000;
|
|
overflow: hidden;
|
|
/* 防下拉刷新 / 橡皮筋回弹 */
|
|
overscroll-behavior: none;
|
|
}
|
|
|
|
/* 游戏全屏根元素:手势全屏捕获层 */
|
|
#game-root {
|
|
position: fixed;
|
|
inset: 0;
|
|
/* 浏览器原生手势全部禁用,交给 engine/gesture.js */
|
|
touch-action: none;
|
|
user-select: none;
|
|
-webkit-user-select: none;
|
|
-webkit-touch-callout: none; /* iOS 长按弹菜单 */
|
|
-webkit-tap-highlight-color: transparent;
|
|
}
|
|
|
|
/* 封面图:居中铺满(裁切多余部分) */
|
|
#game-root img.cover,
|
|
#start-overlay img.cover {
|
|
position: absolute;
|
|
inset: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
object-fit: cover;
|
|
display: block;
|
|
}
|
|
|
|
/* 启动遮罩层:封面 + “轻触开始”(audio.showStartOverlay 创建) */
|
|
#start-overlay {
|
|
position: fixed;
|
|
inset: 0;
|
|
z-index: 100;
|
|
background: #000;
|
|
touch-action: none;
|
|
user-select: none;
|
|
-webkit-user-select: none;
|
|
-webkit-tap-highlight-color: transparent;
|
|
}
|
|
|
|
#start-overlay .hint {
|
|
position: absolute;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 18%;
|
|
text-align: center;
|
|
color: #fff;
|
|
font: 500 20px/1.5 system-ui, sans-serif;
|
|
letter-spacing: 0.2em;
|
|
text-shadow: 0 1px 6px rgba(0, 0, 0, 0.8);
|
|
animation: start-overlay-pulse 1.6s ease-in-out infinite;
|
|
}
|
|
|
|
@keyframes start-overlay-pulse {
|
|
0%, 100% { opacity: 0.35; }
|
|
50% { opacity: 1; }
|
|
}
|