我有以下代码,并希望使用类div
使画布与canvas-wrap
的尺寸相同:
#overlay {
position: absolute;
top: 20px;
width: 100%;
height: 100%;
}
.canvas-wrap {
position: absolute;
top: 20px;
width: 100%;
height: 100%;
}
<div class="canvas-wrap">
<div class="row" id="overlay">
</div>
<canvas id="myCanvas"></canvas>
</div>
不幸的是,此刻它似乎默认为150x300。如果它与div
类canvas-wrap
的大小相同,会更好。
有人可以解释我做错了什么并修复错误吗?
答案 0 :(得分:0)
您没有在画布上设置任何样式定义。
#overlay {
position: absolute;
top: 20px;
width: 100%;
bottom: 0;
}
.canvas-wrap {
position: absolute;
top: 20px;
width: 100%;
bottom: 0px;
box-sizing: border-box;
}
.canvas-wrap canvas {
border: 1px solid magenta;
width: 100%;
height: 100%;
display: inline-block;
box-sizing: border-box;
}
body, .canvas-wrap {
padding: 0;
margin: 0;
}
&#13;
<div class="canvas-wrap">
<div clas="row" id="overlay">
</div>
<canvas id="myCanvas"></canvas>
</div>
&#13;
答案 1 :(得分:0)
对于我的建议你必须在css中提到div的高度和宽度,并且还要提到与画布相同的宽度和高度。例如
.canvas-wrap {
width: 100%;
border: 3px solid #000;
height: 200px
}
.canvas-wrap canvas {
border: 1px solid red;
width: 100%;
height: 200px;
}
&#13;
<div class="canvas-wrap">
<canvas id="myCanvas"></canvas>
</div>
&#13;
对于我的建议你必须在css中提到div的高度和宽度,并且还要提到与画布相同的宽度和高度。 例如
.canvas-wrap {width:100%; height:100px;}