Html Div没有使用“vh”unite定位其母公司的全高?

Html Div没有使用“vh”unite定位其母公司的全高?,html,css,layout,css-position,Html,Css,Layout,Css Position,我必须说,这不是什么大问题,但它很奇怪 我有一个部分元素,最小高度为50vhcss。里面有一个div,里面有一些内容。即使在设置高度后:100%到div,它仍然没有达到其父级的全高;部分。 这就是我不明白的原因 一种解决方案是将顶部、底部、左侧和右侧设置为0时,为部分提供相对位置,为div提供绝对位置。但我非常想知道为什么会发生这种行为 谢谢 块显示元素(div是)将占据其父元素的全部宽度,但它不会占据其父元素的全部高度。默认情况下,块显示元素的高度由其内容的高度定义 如果希望div占据相对于父

我必须说,这不是什么大问题,但它很奇怪

我有一个
部分
元素,最小高度为50vhcss。里面有一个div,里面有一些内容。即使在设置<代码>高度后:100%到
div
,它仍然没有达到其父级的全高;
部分
。 这就是我不明白的原因

一种解决方案是将
顶部、底部、左侧和右侧设置为
0
时,为
部分提供相对位置,为
div提供绝对位置。但我非常想知道为什么会发生这种行为

谢谢

块显示元素(div是)将占据其父元素的全部宽度,但它不会占据其父元素的全部高度。默认情况下,块显示元素的高度由其内容的高度定义


如果希望div占据相对于父容器的完整高度,可以在CSS中显式设置其高度。如果您将高度设置为100%,那么它实际上将占据其家长的全部高度,而不管孩子是谁。

谢谢您的回复!这一点非常正确,div采用其父级的全宽,但采用其内容的高度。我的意图是写
height
,而不是
width
,而这个地方遗漏了我想问的问题(现在可以修改我的帖子了)。感谢您的更正。这是因为您的父容器没有定义的高度。只有一个最小高度。如果将节标记的高度设置为50vh而不是min height,则会看到子内容的行为与预期一致。这永远是CSS中的一个技巧。如果父元素未定义高度,则不能以百分比定义子元素的高度。因此,如果您想要有一个100%高度的div(并且不使用像vh这样的视口相对单位),那么您必须将html和body标记定义为100%高度。那么您的根div也可以定义为100%。