【问题标题】:How to best overlay a canvas on an image?如何最好地在图像上覆盖画布?
【发布时间】:2011-07-16 21:36:52
【问题描述】:

我想在页面上的图像上方放置一个画布。画布将是图像的确切尺寸。

但是,必须满足以下条件:

  • 画布必须始终完全在图像上方。因此,使用绝对定位将不起作用,因为如果在图像上方插入内容,它会将图像向下移动而不移动画布
  • 图像可能会从其原始大小调整大小。因此,用画布替换图像并将其背景设置为图像是行不通的。

我有什么选择?

【问题讨论】:

    标签: html image canvas overlay positioning


    【解决方案1】:

    您应该能够使用 position:relative 而不是 absolute 来满足您的第一个要求。

    第二个我猜你可以把图像和画布放在一个跨度内。画布的宽度/高度为 100%,并且会随着图像大小的调整而调整大小,因为 div 的大小会改变以适应图像。

    编辑:实际上我不确定position:relative 会起作用。但我相信如果你使用position:absolute 并且父元素有position:relative,那么绝对位置将是相对于父元素的。

    【讨论】:

    • 我在画布上尝试了relative,但这会导致其他问题——即使元素不存在,浏览器也会为元素分配空间。
    • 谢谢! Here 是一个证明你的答案是正确的小提琴。 +1 并接受!
    • 优秀。我没有时间亲自测试它,所以我很高兴它成功了
    猜你喜欢
    • 2013-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-03
    • 2017-02-01
    • 2012-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多