我有一个包含矩形的HTML画布,像这样:
var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.rect(20,20,150,100);
ctx.stroke();
如何使用CSS将矩形居中在画布上?我想让它始终保持居中,不受画布宽度的影响。
编号。
画布只是一堆像素。没有元素可以受到CSS的影响。
如果您想在画布内部居中某些内容,那么您必须选择正确的位置来放置您首先要着色的像素。
如果您的图形是简单的形状(如矩形),则最好使用SVG。
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var width = 130, height = 80;//Dimensions of rectangle
var x = canvas.Width/2, y = canvas.Height/2;//Center coordinates of rectangle
ctx.rect(x - width/2, y - height/2, width, height);
ctx.stroke();
请参考这个图示了解相关的IT技术。