css - 当位置是绝对时,按钮被 Canvas 覆盖

标签 css html canvas

我想在 HTML5 canvas 中制作动画,我用 CSS 将 2 个 Canvas 叠加在另一个之上:

#viewport {
  position: relative;
}
#viewport canvas {
  position: absolute;
}
#canvas1 {
  border-color: #000000;
  border-style: groove;
  z-index: -1;
}
#canvas2 {
  background: #112233;
}
<div id="viewport">
  <canvas id="canvas1" width="500" height="200"></canvas>
  <canvas id="canvas2" width="500" height="200"></canvas>
</div>

<input type="text">
<input type="button" value="go">

这是 JSFIDDLE:http://jsfiddle.net/thodoris12/spy1tbhu/1/

问题是文本字段和按钮被我不想要的 Canvas 覆盖了。 有什么解决办法吗?

最佳答案

在视口(viewport) div 上设置高度或底部边距。例如:

#viewport {
    position: relative;
    height:220px;
}

#viewport {
    position: relative;
    padding-bottom:220px;
}

jsFiddle example

由于视口(viewport)的内容是绝对定位的,因此视口(viewport) div 基本上会折叠,就好像它没有内容一样。通过设置高度或底部填充,您可以完成您想要的。

关于css - 当位置是绝对时,按钮被 Canvas 覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26962582/

相关文章:

javascript - 添加此 javascript 按钮/小部件,将空间添加到网页顶部

javascript - 如何使用 Javascript 和 Anchor 标签调整用户的 View

JavaScript 双击函数 Three.js

Delphi重新创建 Canvas

javascript - 我的 Javascript 正在切换所有元素,而不仅仅是一个

html - 取消悬停后使 CSS 悬停状态保持不变

javascript - JQuery onclick slideDown 元素和更改 id 只工作一次

jquery - 在不丢失 CSS 样式的情况下打印 DIV 容器

HTML/CSS 在 <p> 内 float

javascript - SVG 的 Markdown 模拟