In the code below, the second fillStyle
overrides the color specified in first one if I use rect()
and then fill()
in both places (ie, both rects are green) but works as expected (ie, the first rect being blue and second being green) if I change the first rect()
to fillRect()
. Why is it so? I thought fillRect()
was just rect()
and then fill()
, right?
ctx.translate(canvas.width/2, canvas.height/2);
ctx.fillStyle = "#5A9BDC";
ctx.fillRect(0, 0, rectWidth, rectHeight);
// ctx.rect(0, 0, rectWidth, rectHeight);
// ctx.fill();
ctx.translate(-canvas.width/2, -canvas.height/2);
ctx.fillStyle = "#31B131";
ctx.rect(0, 0, rectWidth, rectHeight);
ctx.fill();
Tested in Chrome | Fiddle