我有以下帆布:保證金有權不工作畫布HTML5和麻煩的滾動條去除
我想什麼:沒有任何水平滾動條在畫布上的等號兩邊保證金。
問題:margin-right
屬性不起作用。我已經看到了一些通過指定固定寬度來解決這個問題的解決方案,但在我的情況下,我不能擁有固定的寬度。我希望我的畫布根據窗口的大小調整其寬度高度。
下面的JavaScript需要的是護理:
window.addEventListener('resize' , resizeCanvas , false);
function resizeCanvas(){
canvas.width = window.innerWidth;
canvas.height = window.innerHeight/1.2;
}
那麼,有不同的解決方案?
對於溢出問題,如果我把overflow-x: hidden
放在body
之內,那麼只有滾動條消失,但問題仍然存在。畫布仍然延伸通過屏幕,因此畫布的右邊框不再可見。 See here
這裏是我的代碼:
HTML
<body onload="start()">
<canvas id="myCanvas"></canvas>
</body>
CSS
body{
}
canvas{
border: 1px solid black;
border-radius: 5px;
background-color: #fff;
margin: auto 50px auto 50px; /* works for left margin but not for right */
}
謝謝!
另一件事:
我沒有爲畫布設置width: 100%
,因爲它扭曲它裏面的內容。
你故意做畫布一樣寬的窗口。在頂部添加邊距會使文檔比窗口更寬。 –
你是說下列行是問題嗎? 'margin:auto 50px auto 50px;'? 如果是這樣,我也嘗試刪除邊緣頂部,但沒有改變。 https://codepen.io/swagnikd/full/VWbNgV/ –
我在說這個:'canvas.width = window.innerWidth;'是問題所在。如果你不需要水平滾動條,但邊上有邊距,你顯然不能使畫布和窗口一樣寬...... –