我的页面背景中是否可以包含 HTML Canvas 元素?

htmlweb developmentfront end technology更新于 2024/8/13 1:16:17

在本文中,我们将了解我的页面背景中是否可以包含 HTML Canvas 元素。

您可以尝试向画布添加一个带有position:fixed(或absolute,如果适用)的 CSS 样式,以便其后的任何材质都位于其上方。

为了更好地理解我的页面背景中是否可以包含 HTML Canvas 元素,让我们看以下示例……

示例 1

在下面的示例中,我们使用position:absolute将 CSS 样式应用于画布。

<!DOCTYPE html>
<html>
   <style>
      canvas{
          position:absolute;
          left:0;
          top:0;
          z-index:-1;
          
      }
      div{
          position:absolute;
          z-index:0;
          left:11px;
          top:14px;
          
      }
   </style>
<body>
    <canvas id="mytutorial" width="450" height="500" style="border:1px solid #ABEBC6;"></canvas>
    <div>Welcome To Tutorialspoint</div>
    <script>
       var c = document.getElementById("mytutorial");
       var ctx = c.getContext("2d");
       var grd = ctx.createLinearGradient(0, 0, 600, 600);
       
       grd.addColorStop(0, "#D35400");
       grd.addColorStop(1, "#73C6B6");
       
       ctx.fillStyle = grd;
       ctx.fillRect(0, 0, 600, 600)
    </script>
</body>
</html>

运行上述脚本后,将弹出输出窗口,显示画布作为背景,并在网页上显示"欢迎使用 tutorialspoint"文本。

示例 2

让我们考虑另一个示例,在我的页面背景中使用 HTML 画布元素。

<!DOCTYPE html>
<html>
   <style>
      body {
          background: #dddddd;
      }
      #tutorial {
          margin: 20px;
          padding: 20px;
          background: #ffffff;
          border: thin inset #aaaaaa;
          width: 600px;
          height: 300px;
      }
   </style>
<body>
    <canvas id='tutorial'></canvas>
    <script>
    var canvas = document.getElementById('tutorial'),

    context = canvas.getContext('2d');
    context.font = '38pt arial';

    context.strokeStyle = '#82E0AA';
    context.strokeText('Welcome', canvas.width/2 - 150, canvas.height/2 + 15 );
    </script>
</body>
</html>

运行上述脚本后,它将生成一个输出,该输出由在网页上显示的画布上填充的描边文本组成,作为页面的背景。


相关文章


有用资源