Voglio ridimensionare l'elemento canvas in modo che se si adatti al suo genitore, sia che si tratti di <body>
("schermo intero") o di alcuni <div>
per esempio. Questo è il mio tentativo:Area di disegno HTML5 ridimensionata al genitore
// called at each frame
function update() {
var canvasNode = document.getElementById('mycanvas');
canvasNode.width = canvasNode.parentNode.clientWidth;
canvasNode.height = canvasNode.parentNode.clientHeight;
}
Per qualche motivo, la tela non smette di crescere! Forse client*
non sono i parametri giusti?
vedere il codice in azione qui: http://jsfiddle.net/ARKVD/24/
Se la tela è alta 155 px, il corpo è alto 160 px, il che fa sì che la tela continui a crescere di '5px' ogni volta (il corpo sembra essere' 5px' avanti ogni volta che la tela cresce). Non ho idea del perché, dato che hai impostato tutti i margini/paddings su '0px'. (Questo è su Chrome.) – pimvdb
Grazie, su Linux/Firefox, vedo offset 4px o 3px (a seconda che la mia finestra sia ingrandita o meno) ... annoying! –
La cosa strana è che se la tela è impostata su un'altezza di '0px', il corpo è '20px' alto. Il corpo crolla solo a '0px' se la tela viene effettivamente rimossa. – pimvdb