【发布时间】:2017-12-27 21:09:26
【问题描述】:
<!DOCTYPE html>
<html>
<head>
<style>
html,
body {
font-size: 16px;
width: 70vw;
height: 40vh;
background-color: yellow;
}
h1 {
background-color: red;
}
</style>
</head>
<body>
<h1>My First Heading</h1>
</body>
</html>
在上面的代码中,我将width 设置为70vw,将height 设置为40vh。
我有两个问题:
- 为什么当我在
html,body声明中使用40vh指定它应该只填充40% 时,html,body的height仍然填充100% 的视口高度? - 为什么 h1 元素的宽度从
html,body声明中设置为70vw,即使宽度没有被继承但 h1 的高度未从html,body声明中设置为40vh?李>
【问题讨论】:
-
对于第二个问题.. h1 是块元素 si 它需要 100% 的容器宽度和高度是自动的,所以它取决于内容而不是父的高度
-
对于第一个问题,在 html,body 的声明中添加边框,您会看到它采用了您指定的高度/宽度
-
那么问题是为什么背景颜色会应用在它之外?
-
这就是我评论的原因,我还不知道背景:)
-
@TemaniAfif 但是元素的宽度取决于父元素的宽度,对吧?因为每当我将
html,body上的width更改为例如width:50vh、width:60vh等时,h1 的红色背景都会相应更改。