【发布时间】:2015-08-07 00:34:02
【问题描述】:
我正在尝试让我的画布填满整个窗口。将宽度和高度设置为 100% 根本不起作用。相反,它是 100 x 100 像素。为什么会发生这种情况,我怎样才能达到我的效果?
这是一个基本上显示我的问题的小提琴。谢谢!
https://jsfiddle.net/t04n6q9y/1/
<body height="100%" width="100%">
<canvas id="myCanvas" width="100%" height="100%"></canvas>
</body>
【问题讨论】:
-
请不要为此使用 CSS,当您尝试做的不仅仅是
ctx.fillRect(0,0,canvas.width,canvas.height)时,您会遇到很多困难。例如,如果你想添加一些鼠标监听器,你的坐标会被搞砸,如果你尝试画一个圆圈,它可能会以一个椭圆结尾,如果你尝试drawImage(),比例会被搞砸,无论如何,你的像素比例会出错。 -
您的代码将画布大小设置为 100x100 像素,因为 canvas.width 和 canvas.height 都采用数字大小而不是百分比大小。
canvas.width=window.innerWidth;&canvas.height=window.innerHeight会将您的画布调整为当前窗口大小。
标签: javascript html css canvas fullscreen