嵌套的CANVAS元素

12

是否可以在一个 <div> 元素内部包含另一个 <div> 元素?我知道可以将它们重叠,但这种做法可行吗?

<canvas id="parent">
    <canvas id="child"></canvas>
</canvas>
我尝试过了,但似乎不起作用。
4个回答

19

canvas specification不允许这样做。Canvas元素可以在嵌入式内容上下文中使用;嵌套Canvas元素会将其置于回退内容上下文中,而该上下文不受支持。


10

如果您想要单独处理背景和前景,您可以使用两个画布,并使用CSS将其中一个放在另一个上方。

<canvas id="bg" width="640" height="480" style="position: absolute; z-index: 0">
</canvas>
<canvas id="fg" width="640" height="480" style="position: absolute; z-index: 1">
</canvas>

实际上这是提高canvas性能的几个技巧之一。来源:HTML5 Rocks


-1

要查看代码,请右键单击示例网页并选择查看页面源代码。 - Don Cowan

-1

正如Isaac Zepeda在他的回答中所说,您需要拥有不同的画布ID和Z索引。您还需要为每个画布几乎命名所有变量和函数,以便在您想要在画布B上绘制时不会在画布A上绘制。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接