私は画像を保持するdivを持っています。JSキャンバスはdivを意図せずに伸ばします
HTML:
<div id="image_holder" class='hide'>
<img id="image" onload="createStimuli() " >
<canvas id="canvasOverImage" class="coveringCanvas" ></canvas>
</div>
coveringCanvasスタイル:
CSS:時間は右のI負荷である
.coveringCanvas {
position:relative;
z-index:2
}
次に、画像自体が、後にロードされています画像に
document.getElementById('image').src = `imagesource`;
今イメージがロードされているので、それはcreateStimuli()
をトリガー:
function createStimuli() {
var image = $('#image');
var canvas = $('#canvasOverImage');
canvas.css({top:`-${image.height()}px`}); // set style via css
canvas.attr({ "height":image.height(), "width" :image.width()}); // set attr in html
}
このコードでは、画像の上に正確にキャンバスを置きます(意図したように)しかし、位置の前に変更されることが表示されます一番上に置くと、イメージの下または横に配置され、キャンバスを引き伸ばします。
結果として、キャンバスがイメージ上にあるにもかかわらず、キャンバスの作成によってdivが拡大され、divの下または下に空白が残ります。
これに対処する方法はありますか?または、私はちょうどキャンバスを作成した後divのサイズを変更する必要がありますか?この問題を回避するには
WAHTあなたはへ最終結果とまったく同じですか? –
申し訳ありませんあなたは最終結果として何をしたいのですか?キャンバスの作成がdivの高さや幅に影響しないこと。 –