这不是React问题,而是CSS问题!它的工作原理如下:
当您使用height:100%
时,它会使用父元素的高度进行计算!如果父元素没有特定的高度,则浏览器无法确定子元素的百分比高度!
您可以使用的一种解决方法是CSS3视窗单位vh
。
div{ height:100vh; }
这将使您的 div 占据整个屏幕高度而不改变任何父元素属性!视窗单位是相对于屏幕高度工作的,其中 100vh = 100% 屏幕高度!
这不是React的问题,而是CSS的工作方式。如果父容器没有指定高度,你就不能使用百分比来计算子元素的尺寸。你需要显式地设置容器的高度,直到body元素。
div{ height:100vh; }
当你将vh设置为视口单位时,100即为屏幕的100%。