Cómo llenar HTML5 completo <canvas>
con un solo color.
Vi algunas soluciones como esta para cambiar el color de fondo usando CSS pero esta no es una buena solución ya que el lienzo permanece transparente, lo único que cambia es el color del espacio que ocupa.
Otro es crear algo con el color dentro del lienzo, por ejemplo, un rectángulo ( ver aquí ) pero aún no llena todo el lienzo con el color (en caso de que el lienzo sea más grande que la forma que creamos).
¿Existe una solución para llenar todo el lienzo con un color específico?
javascript
html
canvas
Enve
fuente
fuente
let canvas = document.getElementById('canvas'); canvas.setAttribute('width', window.innerWidth); canvas.setAttribute('height', window.innerHeight); let ctx = canvas.getContext('2d'); //Draw Canvas Fill mode ctx.fillStyle = 'blue'; ctx.fillRect(0,0,canvas.width, canvas.height);
* { margin: 0; padding: 0; box-sizing: border-box; } body { overflow: hidden; }
<canvas id='canvas'></canvas>
fuente
Puede cambiar el fondo del lienzo haciendo esto:
<head> <style> canvas { background-color: blue; } </style> </head>
fuente
¿Sabes qué? Hay una biblioteca completa para gráficos de lienzo. Se llama p5.js. Puede agregarlo con una sola línea en su elemento principal y un archivo sketch.js adicional.
Haga esto con sus etiquetas html y body primero:
<html style="margin:0 ; padding:0"> <body style="margin:0 ; padding:0">
Agrega esto a tu cabeza:
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.6.1/p5.js"></script> <script type="text/javascript" src="sketch.js"></script>
El archivo sketch.js
function setup() { createCanvas(windowWidth, windowHeight); background(r, g, b); }
fuente
p5.js
está340kB
minimizado y comprimido con gzip! Yo diría que esta página contiene algunas opciones un poco más ligeras ..