我有两个像这样的div标签:

<div class="cl1">
  <div class="cl2">
    <canvas id="testcanvas"/>
  </div>
</div>


div.cl1在CSS中具有宽度和高度

width: 100%;
height: 100%;


div.cl2还没有,我想它将使用默认的宽度和高度。

但是当我使用这个

width: 100%;
height: 100%;


在canvas#testcanvas中,它的高度不是div.cl1的100%,而是大约30%;像这样

screenshot


  绿色是canvas#testcanvas和div.cl2
  蓝色是div.cl1;


因此div标签如何计算默认高度。

而且当我删除<!DOCTYPE html>时,在canvas#testcanvas中其高度为100%div.cl1,我以为我不知道有不同的行为

最佳答案

HTML5 canvas元素的宽度和高度应明确设置,因为它定义了呈现上下文的区域。例如。 ...

canvas.width = window.innerWidth;
canvas.height = window.innerHeight;


……将为您提供整页的画布。

CSS宽度/高度仅是一个显示属性,如果在画布上未设置宽度/高度,它将解析为该设备/浏览器的默认大小。在移动设备上可能需要一些其他调整大小的方法来覆盖方向更改。

关于css - <div>中的默认高度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45770674/

10-12 00:04
查看更多