Javascript 缩放时画布宽度延伸到页面外部
我有一个画布,通过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 高度=窗内高度; 画布宽度=宽度;
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}
。