HTML5:如何将固定文本输入置于居中 canvas 之上?

HTML5: How do you place a fixed Text Input over a centering canvas?

我有一个包含游戏的 canvas。我想在游戏中的特定位置放置一个 html 文本输入字段。这被证明是困难的,因为我希望 canvas 在 window 中自动水平居中,并且当 window 大小改变时它与文本输入不同步。

我应该给这两个元素什么样式设置才能使文本字段保持在 canvas 上的相同位置?

提供您的 canvas 元素 position:relative 并提供您的消息元素 position:absolute。然后使用 top & left 定位消息。

canvas {
  border: 1px solid black;
  height: 300px;
  width: 300px;
  position:relative;
}


#message {
  position:absolute;
  top:150px;
  left:100px;
}

https://jsfiddle.net/ebkpcsvg/1/

我找到了一个有效的解决方案:http://jsfiddle.net/FV2NL/

<div id="container">
    <canvas id="canvas" width=800 height=600></canvas>
        <div id="menu">
            <button id="button1" type="button">Start</button>
            <button id="button2" type="button">Options</button>
            <button id="button3" type="button">High Scores</button>
        </div>
</div>
</body>

所有内容都必须在 div 组内,该组具有相对定位并以 margin: 0 auto; 为中心。 canvas 应该有绝对定位和 top: 0;左:0;。文本输入是绝对的,并放在相对的 div.

这是来自此处的另一个 Whosebug 页面:

Buttons centered over canvas