Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 缩放时画布宽度延伸到页面外部_Javascript_Html_Canvas - Fatal编程技术网

Javascript 缩放时画布宽度延伸到页面外部

Javascript 缩放时画布宽度延伸到页面外部,javascript,html,canvas,Javascript,Html,Canvas,我有一个画布,通过Javascript根据窗口大小创建,代码如下: var-WIDTH=window.innerWidth, 高度=窗内高度, canvas=document.querySelector(“#pixies”), context=canvas.getContext('2d'), 梯度=零, pixies=新数组(); 函数集维度(e){ 宽度=window.innerWidth-40; //出于某种原因,上面的代码将窗口的宽度扩展了约40px 高度=窗内高度; 画布宽度=宽度;

我有一个画布,通过Javascript根据窗口大小创建,代码如下:

var-WIDTH=window.innerWidth,
高度=窗内高度,
canvas=document.querySelector(“#pixies”),
context=canvas.getContext('2d'),
梯度=零,
pixies=新数组();
函数集维度(e){
宽度=window.innerWidth-40;
//出于某种原因,上面的代码将窗口的宽度扩展了约40px
高度=窗内高度;
画布宽度=宽度;
canvas.height=高度;
}
设置维度();
window.addEventListener('resize',setDimensions)


我的解决方案:将画布样式设置为最大宽度:100%

主体边距。在200%缩放时,它会加倍。为了避免这种情况,请在CSSY中设置
body{margin:0}
。您的建议根本无法解决此问题。我觉得这与窗户宽度的百分比有关。如何将画布设置为窗口的百分比?
canvas.width=innerWidth*(百分比/100)
。您能否修复您的代码片段,以便我们重现您的问题?B.t.w如果问题出在高度上,您还必须设置
canvas{display:block}