下面的代码显示了一个径向渐变填充矩形。如果我取消评论设置画布的两条线'宽度和高度,它显示一个黑色矩形而不是一个渐变填充。为什么?如何设置宽度和高度仍然能够显示渐变?
<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8" />
<script type="text/javascript">
function on_load(e) {
var container = document.getElementById("container");
var canvas = container.appendChild(document.createElement("canvas"));
var context = canvas.getContext("2d");
var gradient = context.createRadialGradient(30, 30, 10, 30, 30, 30);
gradient.addColorStop(0, "rgba(0,0,0,1)");
gradient.addColorStop(1, "rgba(0,0,0,0)");
context.fillStyle = gradient;
//canvas.width = 150;
//canvas.height = 150;
context.fillRect(0, 0, 60, 60);
}
</script>
</head>
<body onload="on_load()"><div id="container"></div></body>
</html>
答案 0 :(得分:1)
在使用其上下文
之前,您必须更改画布大小答案 1 :(得分:0)
我认为原因是设置宽度或高度会清除画布及其设置。