我在Chrome应用中使用了html canvas
元素,但fillRect
无效。它打印出一个实心的矩形但不正确。
我这样做了:
var c = document.getElementById("canvas");
var ctx = c.getContext("2d");
ctx.fillStyle = "#FF0000";
ctx.fillRect(20, 20, 150, 100);
但它看起来像这样:
它看起来应该是这样的
这是什么问题?
CSS?
#canvas {
width: 896px;
height: 896px;
background-image: url('assets/underlays/transUnderlay_28.png');
}
HTML?
<td>
<div id='canvasWrapper'>
<canvas id='canvas'></canvas>
</div>
</td>
请帮忙!
答案 0 :(得分:4)
在height
元素中添加width
和<canvas>
而不是CSS:
<td>
<div id='canvasWrapper'>
<canvas id='canvas' width='896' height='896' ></canvas>
</div>
</td>
对于HTML 5画布,width
和height
属性用于设置画布坐标系的实际宽度/高度,而普通CSS width
和height
仅作为元素的大小(不考虑元素坐标系)。