jQuery在画布中淡化div

时间:2012-04-22 22:44:34

标签: javascript html5

我正试图在<canvas>标记内淡化DIV。 (这是否允许?我假设是因为它是一个元素)。你知道标准jQuery fadeIn,这就是我用于风格的内容:

    <style type="text/css">
<!--
    #canvas {
       background:red;
       z-index:0;
       position:relative;       
    }
    .txt {
        z-index:2;
        background:blue;
        display:none;
        position:absolute;
        top:0;
        right:0;
        width:200px;
    }
-->
</style>

,这就是我的HTML(忽略身体......我拥有它......这就是缩短它):

<body>
    <canvas id="canvas"><div class="txt">Welcome to the Game</div></canvas>
</body>

我尝试了一个简单的fadein而且它不起作用..

2 个答案:

答案 0 :(得分:1)

来自WHATWG spec

  

canvas元素的内容(如果有)是元素的后备内容。

仅当浏览器不支持某种元素时才会显示“后备内容”:

<canvas>
    <div>Looks like you need to upgrade to a canvas-aware browser!</div>
</canvas>

您应该将放在 canvas元素之后,并使用CSS在画布上直观地定位它。

答案 1 :(得分:0)

根据WHATWG spec for the canvas element

  

当作者使用thecanvas元素时,他们还必须提供的内容在呈现给用户时,传达与位图画布基本相同的功能或目的。可以将该内容作为扫描元素的内容放置。如果有的话,thecanvas元素的内容是元素的后备内容。

看来你的内容肯定不是后备内容。如果不是,也许你应该使用传统的画布方法来显示你的文字。