【发布时间】:2016-05-04 18:20:03
【问题描述】:
所以,问题在于getComputedStyle 函数的工作方式非常奇怪。首先我通过 ID 获取我的画布,例如 var canvas = document.getElementById('canvas') 然后使用 getComputedStyle 函数,
并尝试设置新的宽度和高度值。但问题是它忽略了高度,只取宽度。
JavaScript:
var newCanvas = getComputedStyle(canvas)
var width = parseInt(newCanvas.getPropertyValue('width'), 10)
var height = parseInt(newCanvas.getPropertyValue('height'), 10)
canvas.height = height
canvas.width = width
HTML:
<canvas id="canvas" width="480" height="320"></canvas>
CSS:
canvas {
display: block;
margin: 10px auto;
border: 3px solid black;
border-radius: 10px;
height: 50%;
width: 75%;
}
当我更改高度值(在 CSS 文件中)时,它不会影响画布的大小。但是当我改变宽度值时,宽度和高度都会改变。
【问题讨论】:
标签: javascript css html canvas