Files
agomizi1cmandClaude Opus 5.5 ed5617a47a Block pinch and double-tap zoom, including on iOS Safari
iOS Safari ignores user-scalable=no, so zoom is blocked in three layers:
- viewport meta: maximum-scale=1, user-scalable=no on every page
  (covers Android, home-screen apps and iOS focus zoom on inputs)
- CSS: touch-action: pan-x pan-y on html, so scrolling still works but
  pinch and double-tap zoom do not
- JS (fluid.js): cancel Safari's gesture* events and two-finger touchmove

Double-tap is left to CSS rather than JS so rapid repeated taps on
buttons still register as clicks.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-21 21:53:02 +09:00

85 lines
3.3 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!doctype html>
<html lang="ja">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no, viewport-fit=cover">
<meta name="theme-color" media="(prefers-color-scheme: light)" content="#f2f2f7">
<meta name="theme-color" media="(prefers-color-scheme: dark)" content="#000000">
<meta name="robots" content="noindex, nofollow">
<title>ハンドレンジ - Hold'em Night</title>
<link rel="icon" href="/assets/favicon.ico">
<link rel="stylesheet" href="/assets/style.css">
<link rel="stylesheet" href="/range/files/range.css">
</head>
<body class="page-range">
<header class="nav-bar" id="nav">
<div class="nav-inner">
<a class="nav-back" href="/" aria-label="ロビーへ戻る"><svg class="i" viewBox="0 0 24 24" aria-hidden="true"><path d="M15 5l-7 7 7 7"/></svg>ロビー</a>
<span class="nav-title"></span>
</div>
</header>
<main class="wrap range-wrap">
<h1 class="large-title" id="large-title">ハンドレンジ</h1>
<div class="segmented range-tabs" id="tabs">
<button type="button" class="seg-btn active" data-view="range">レンジ表</button>
<button type="button" class="seg-btn" data-view="quiz">クイズ</button>
</div>
<!-- レンジ表 -->
<section id="view-range">
<div class="matrix-card">
<div class="range-matrix" id="matrix" aria-label="13×13 ハンドレンジ表"></div>
</div>
<div class="range-legend" id="legend"></div>
<div class="card selected-card" id="selected">
<div class="sel-hand">—</div>
<div class="hint">セルをタップすると分類を確認できます</div>
</div>
<button type="button" class="btn btn-tint btn-lg btn-block mt-12" id="start-from-range">クイズを始める</button>
</section>
<!-- クイズ -->
<section id="view-quiz" hidden>
<div class="label">問題数(全169ハンドからランダム)</div>
<div class="segmented" id="count">
<button type="button" class="seg-btn active" data-count="10">10問</button>
<button type="button" class="seg-btn" data-count="20">20問</button>
<button type="button" class="seg-btn" data-count="0">全問</button>
</div>
<div class="quiz-progress"><i id="progress-bar"></i></div>
<div class="quiz-stats">
<span id="q-count">開始前</span>
<span id="q-score">正解 0 / 0</span>
<span id="q-accuracy">正答率 --</span>
</div>
<div class="card quiz-hand">
<div class="quiz-cards">
<img id="card-1" alt="" hidden>
<img id="card-2" alt="" hidden>
</div>
<div class="quiz-hand-name" id="q-hand">?</div>
<div class="hint" id="q-prompt">「開始」を押してください</div>
</div>
<div class="quiz-answers" id="answers"></div>
<div class="quiz-feedback" id="feedback" aria-live="polite" hidden></div>
<div class="row mt-12">
<button type="button" class="btn btn-lg" id="start-quiz">開始</button>
<button type="button" class="btn btn-tint btn-lg" id="next-question" disabled>次の問題</button>
</div>
</section>
</main>
<script src="/assets/fluid.js"></script>
<script src="/range/files/range-data.js"></script>
<script src="/range/files/range.js"></script>
</body>
</html>